LDMX Software
|
User action used to filter out photo-nuclear events that don't see the photo-nuclear gamma produce specific products. More...
#include <PhotoNuclearProductsFilter.h>
Public Member Functions | |
PhotoNuclearProductsFilter (const std::string &name, framework::config::Parameters ¶meters) | |
Constructor. | |
~PhotoNuclearProductsFilter () | |
Destructor. | |
void | stepping (const G4Step *step) override |
Callback that allows a user to take some actions at the end of a step. | |
std::vector< simcore::TYPE > | getTypes () override |
Retrieve the type of actions this class defines. | |
Public Member Functions inherited from simcore::UserAction | |
UserAction (const std::string &name, framework::config::Parameters ¶meters) | |
Constructor. | |
virtual | ~UserAction ()=default |
Destructor. | |
virtual void | BeginOfEventAction (const G4Event *) |
Method called at the beginning of every event. | |
virtual void | EndOfEventAction (const G4Event *) |
Method called at the end of every event. | |
virtual void | BeginOfRunAction (const G4Run *) |
Method called at the beginning of a run. | |
virtual void | EndOfRunAction (const G4Run *) |
Method called at the end of a run. | |
virtual void | PreUserTrackingAction (const G4Track *) |
Method called before the UserTrackingAction. | |
virtual void | PostUserTrackingAction (const G4Track *) |
Method called after the UserTrackingAction. | |
virtual G4ClassificationOfNewTrack | ClassifyNewTrack (const G4Track *, const G4ClassificationOfNewTrack &cl) |
Method called when a track is updated. | |
virtual void | NewStage () |
Method called at the beginning of a new stage. | |
virtual void | PrepareNewEvent () |
Method called at the beginning of a new event. | |
Private Attributes | |
std::vector< int > | productsPdgID_ |
Container to hold the PDG IDs of products of interest. | |
double | min_e |
Additional Inherited Members | |
Public Types inherited from simcore::UserAction | |
using | Factory = ::simcore::Factory< UserAction, std::shared_ptr< UserAction >, const std::string &, framework::config::Parameters & > |
factory for user actions | |
Protected Member Functions inherited from simcore::UserAction | |
UserEventInformation * | getEventInfo () const |
Get a handle to the event information. | |
const std::map< int, ldmx::SimParticle > & | getCurrentParticleMap () const |
Get the current particle map. | |
Protected Attributes inherited from simcore::UserAction | |
std::string | name_ {""} |
Name of the UserAction. | |
framework::config::Parameters | parameters_ |
The set of parameters used to configure this class. | |
User action used to filter out photo-nuclear events that don't see the photo-nuclear gamma produce specific products.
This user action will only process steps whose associated track has been tagged as a "PN Gamma". This tag is currently only set in ECalProcessFilter and needs to be placed in the UserAction pipeline before this class. The desired products are passed to this class through the parameter vector<int> parameter "pdg_ids".
Definition at line 30 of file PhotoNuclearProductsFilter.h.
biasing::PhotoNuclearProductsFilter::PhotoNuclearProductsFilter | ( | const std::string & | name, |
framework::config::Parameters & | parameters | ||
) |
Constructor.
[in] | name | The name of this class instance. |
[in] | parameters | The parameters used to configure this class. |
Definition at line 22 of file PhotoNuclearProductsFilter.cxx.
References framework::config::Parameters::getParameter(), and productsPdgID_.
biasing::PhotoNuclearProductsFilter::~PhotoNuclearProductsFilter | ( | ) |
|
inlineoverridevirtual |
Retrieve the type of actions this class defines.
Implements simcore::UserAction.
Definition at line 54 of file PhotoNuclearProductsFilter.h.
|
overridevirtual |
Callback that allows a user to take some actions at the end of a step.
[in] | step | The Geant4 step containing transient information about the step taken by a track. |
Reimplemented from simcore::UserAction.
Definition at line 31 of file PhotoNuclearProductsFilter.cxx.
References simcore::UserTrackInformation::get(), productsPdgID_, and simcore::UserTrackInformation::tagPNGamma().
|
private |
Definition at line 61 of file PhotoNuclearProductsFilter.h.
|
private |
Container to hold the PDG IDs of products of interest.
Definition at line 60 of file PhotoNuclearProductsFilter.h.
Referenced by PhotoNuclearProductsFilter(), and stepping().