LDMX Software
|
User action plugin that filters events that don't see a hard brem from the target undergo a photo-nuclear reaction in the ECal. More...
#include <EcalProcessFilter.h>
Public Member Functions | |
EcalProcessFilter (const std::string &name, framework::config::Parameters ¶meters) | |
virtual | ~EcalProcessFilter ()=default |
Destructor. | |
void | stepping (const G4Step *step) override |
Method called after each simulation step. | |
G4ClassificationOfNewTrack | ClassifyNewTrack (const G4Track *aTrack, const G4ClassificationOfNewTrack ¤tTrackClass) override |
Classify a new track which postpones track processing. | |
std::vector< simcore::TYPE > | getTypes () override |
Retrieve the type of actions this class defines. | |
![]() | |
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 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 | |
G4Track * | currentTrack_ {nullptr} |
Pointer to the current track being processed. | |
std::string | process_ {""} |
Process to filter. | |
Additional Inherited Members | |
![]() | |
using | Factory |
factory for user actions | |
![]() | |
UserEventInformation * | getEventInfo () const |
Get a handle to the event information. | |
const std::map< int, ldmx::SimParticle > & | getCurrentParticleMap () const |
Get the current particle map. | |
![]() | |
std::string | name_ {""} |
Name of the UserAction. | |
framework::config::Parameters | parameters_ |
The set of parameters used to configure this class. | |
mutable::framework::logging::logger | theLog_ |
the logging channel user actions can use ldmx_log with | |
User action plugin that filters events that don't see a hard brem from the target undergo a photo-nuclear reaction in the ECal.
Definition at line 30 of file EcalProcessFilter.h.
biasing::EcalProcessFilter::EcalProcessFilter | ( | const std::string & | name, |
framework::config::Parameters & | parameters ) |
Definition at line 22 of file EcalProcessFilter.cxx.
|
overridevirtual |
Classify a new track which postpones track processing.
Track processing resumes normally if a target PN interaction occurred.
aTrack | The Geant4 track. |
currentTrackClass | The current track classification. |
Reimplemented from simcore::UserAction.
Definition at line 28 of file EcalProcessFilter.cxx.
|
inlineoverridevirtual |
Retrieve the type of actions this class defines.
Implements simcore::UserAction.
Definition at line 56 of file EcalProcessFilter.h.
|
overridevirtual |
Method called after each simulation step.
TYPE::STEPPING
current | Geant4 step |
Check if the photon will be exiting the ecal
The 'hadronic_calorimeter' logical volume name is the parent volume to all of the HCal components.
Reimplemented from simcore::UserAction.
Definition at line 50 of file EcalProcessFilter.cxx.
References simcore::UserTrackInformation::get().
|
private |
Pointer to the current track being processed.
Definition at line 62 of file EcalProcessFilter.h.
|
private |