SLIC  6.1.1
Simulation for the Linear Collider (SLIC) - Geant4 simulation application
Public Member Functions | Private Attributes | List of all members
PairConvFilter Class Reference

#include <PairConvFilter.hh>

Inheritance diagram for PairConvFilter:
UserActionPlugin

Public Member Functions

 PairConvFilter ()=default
 Default constructor. More...
 
 ~PairConvFilter ()=default
 Destructor. More...
 
void endEvent (const G4Event *) final override
 
void endRun (const G4Run *run) final override
 
std::string getName ()
 
bool hasEventAction () final override
 
bool hasRunAction () final override
 
bool hasStackingAction () final override
 
bool hasSteppingAction () final override
 
G4ClassificationOfNewTrack stackingClassifyNewTrack (const G4Track *, const G4ClassificationOfNewTrack &currentTrackClass) final override
 
void stepping (const G4Step *step) final override
 
- Public Member Functions inherited from UserActionPlugin
virtual ~UserActionPlugin ()
 
virtual void beginEvent (const G4Event *)
 
virtual void beginRun (const G4Run *)
 
virtual void generatePrimary (G4Event *)
 
int getVerboseLevel ()
 
virtual bool hasPrimaryGeneratorAction ()
 
virtual bool hasTrackingAction ()
 
virtual void postTracking (const G4Track *)
 
virtual void preTracking (const G4Track *)
 
void setVerboseLevel (int verbose)
 
virtual void stackingNewStage ()
 
virtual void stackingPrepareNewEvent ()
 

Private Attributes

G4Track * currentTrack_ {nullptr}
 Pointer to the current track being processed. More...
 
bool hasPairConv_ {false}
 Flag that denotes whether a conversion has been found. More...
 
short pairConvCount_ {0}
 Counter to keep track of the pair conversion count. More...
 

Additional Inherited Members

- Protected Attributes inherited from UserActionPlugin
int verbose_ { 1 }
 

Detailed Description

Class defining a UserAction that filters out events where a pair conversion occurs.

Definition at line 16 of file PairConvFilter.hh.

Constructor & Destructor Documentation

◆ PairConvFilter()

PairConvFilter ( )
default

Default constructor.

◆ ~PairConvFilter()

~PairConvFilter ( )
default

Destructor.

Member Function Documentation

◆ endEvent()

void endEvent ( const G4Event *  )
finaloverridevirtual

Method called at the end of the event.

Parameters
eventGeant4 event object.

Reimplemented from UserActionPlugin.

Definition at line 113 of file PairConvFilter.cc.

References PairConvFilter::hasPairConv_.

◆ endRun()

void endRun ( const G4Run *  run)
finaloverridevirtual

Method called at the end of the run. This will be used to print out a summary of the total conversion statistics.

Parameters
runGeant4 run object.

Reimplemented from UserActionPlugin.

Definition at line 115 of file PairConvFilter.cc.

References LOG::endl, and PairConvFilter::pairConvCount_.

◆ getName()

std::string getName ( )
inlinevirtual
Returns
The name of this plugin

Implements UserActionPlugin.

Definition at line 26 of file PairConvFilter.hh.

◆ hasEventAction()

bool hasEventAction ( )
inlinefinaloverridevirtual
Returns
True if this plugin has an event action

Reimplemented from UserActionPlugin.

Definition at line 32 of file PairConvFilter.hh.

◆ hasRunAction()

bool hasRunAction ( )
inlinefinaloverridevirtual
Returns
True if this plugin has a run action

Reimplemented from UserActionPlugin.

Definition at line 38 of file PairConvFilter.hh.

◆ hasStackingAction()

bool hasStackingAction ( )
inlinefinaloverridevirtual
Returns
True if this plugin has a stacking action

Reimplemented from UserActionPlugin.

Definition at line 35 of file PairConvFilter.hh.

◆ hasSteppingAction()

bool hasSteppingAction ( )
inlinefinaloverridevirtual
Returns
True if this plugin has a stepping action

Reimplemented from UserActionPlugin.

Definition at line 29 of file PairConvFilter.hh.

◆ stackingClassifyNewTrack()

G4ClassificationOfNewTrack stackingClassifyNewTrack ( const G4Track *  track,
const G4ClassificationOfNewTrack &  currentTrackClass 
)
finaloverridevirtual

Classify a track. In the case of this filter, the track is pushed to the waiting stack if a pair conversion hasn't been found and the particle is not a photon.

Parameters
currentTrackClassThe current track classification.
Returns
A new track classification if the particle is not a photon.

Reimplemented from UserActionPlugin.

Definition at line 10 of file PairConvFilter.cc.

References PairConvFilter::currentTrack_.

◆ stepping()

void stepping ( const G4Step *  step)
finaloverridevirtual

Implementmthe stepping action which performs the filtering.

Parameters
[in]stepGeant4 step

Reimplemented from UserActionPlugin.

Definition at line 25 of file PairConvFilter.cc.

References PairConvFilter::currentTrack_, LOG::endl, PairConvFilter::hasPairConv_, and PairConvFilter::pairConvCount_.

Member Data Documentation

◆ currentTrack_

G4Track* currentTrack_ {nullptr}
private

Pointer to the current track being processed.

Definition at line 76 of file PairConvFilter.hh.

Referenced by PairConvFilter::stackingClassifyNewTrack(), and PairConvFilter::stepping().

◆ hasPairConv_

bool hasPairConv_ {false}
private

Flag that denotes whether a conversion has been found.

Definition at line 79 of file PairConvFilter.hh.

Referenced by PairConvFilter::endEvent(), and PairConvFilter::stepping().

◆ pairConvCount_

short pairConvCount_ {0}
private

Counter to keep track of the pair conversion count.

Definition at line 82 of file PairConvFilter.hh.

Referenced by PairConvFilter::endRun(), and PairConvFilter::stepping().


The documentation for this class was generated from the following files: