11#ifndef BIASING_NONFIDUCIALFILTER_H
12#define BIASING_NONFIDUCIALFILTER_H
22#include "SimCore/UserAction.h"
27#include "Framework/Configure/Parameters.h"
49 void stepping(
const G4Step* step)
override;
58 std::vector<simcore::TYPE>
getTypes()
override {
59 return {simcore::TYPE::EVENT, simcore::TYPE::STACKING,
60 simcore::TYPE::STEPPING};
69 enableLogging(
"NonFiducialFilter")
Base classes for all user event processing components to extend.
User action that allows a user to filter out events that are non-fiducial, i.e.
std::vector< simcore::TYPE > getTypes() override
Retrieve the type of actions this class defines.
void stepping(const G4Step *step) override
Implement the stepping action which performs the target volume biasing.
void EndOfEventAction(const G4Event *) override
Method called at the end of every event.
virtual ~NonFiducialFilter()=default
Destructor.
bool abort_fiducial_
If turned on, this aborts fiducial events.
double recoil_max_p_
Recoil electron threshold.
Class encapsulating parameters for configuring a processor.
Interface that defines a user action.