LDMX Software
|
Filter to keep tracks that are the products of certain particle's decays. More...
#include <DecayChildrenKeeper.h>
Public Member Functions | |
DecayChildrenKeeper (const std::string &name, framework::config::Parameters ¶meters) | |
Constructor. | |
~DecayChildrenKeeper () | |
Destructor. | |
void | PostUserTrackingAction (const G4Track *track) override |
Method called when a track is done being processed. | |
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 | stepping (const G4Step *) |
Method called after each simulation step. | |
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 > | parents_ |
The PDG IDs for which to keep decay children. | |
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. | |
Filter to keep tracks that are the products of certain particle's decays.
Definition at line 27 of file DecayChildrenKeeper.h.
biasing::utility::DecayChildrenKeeper::DecayChildrenKeeper | ( | const std::string & | name, |
framework::config::Parameters & | parameters | ||
) |
Constructor.
[in] | name | the name of the instance of this UserAction. |
[in] | parameters | the parameters used to configure this UserAction. |
Definition at line 17 of file DecayChildrenKeeper.cxx.
References framework::config::Parameters::getParameter(), and parents_.
biasing::utility::DecayChildrenKeeper::~DecayChildrenKeeper | ( | ) |
|
inlineoverridevirtual |
Retrieve the type of actions this class defines.
Implements simcore::UserAction.
Definition at line 61 of file DecayChildrenKeeper.h.
|
overridevirtual |
Method called when a track is done being processed.
We get the stored particle map from the TrackMap object and look for the current track's parent in it. If the current track's parent is in it THEN we check if that parent has a PDG matching ANY of the configured PDGs.
[in] | track | Geant4 track associated with a particle. |
Reimplemented from simcore::UserAction.
Definition at line 25 of file DecayChildrenKeeper.cxx.
References simcore::UserTrackInformation::get(), simcore::UserAction::getCurrentParticleMap(), parents_, and simcore::UserTrackInformation::setSaveFlag().
|
private |
The PDG IDs for which to keep decay children.
Definition at line 67 of file DecayChildrenKeeper.h.
Referenced by DecayChildrenKeeper(), and PostUserTrackingAction().