ATLAS Offline Software
Loading...
Searching...
No Matches
G4UA::G4AtlasTrackingAction Class Reference

Atlas subclass of the G4 tracking action. More...

#include <G4AtlasTrackingAction.h>

Inheritance diagram for G4UA::G4AtlasTrackingAction:
Collaboration diagram for G4UA::G4AtlasTrackingAction:

Public Member Functions

 G4AtlasTrackingAction ()
 Constructor.
void PreUserTrackingAction (const G4Track *trk) override final
 Geant4 method for pre-tracking action.
void PostUserTrackingAction (const G4Track *trk) override final
 Geant4 method for post-tracking action.
void addTrackAction (G4UserTrackingAction *action)
 Add one action to the list.

Private Attributes

std::vector< G4UserTrackingAction * > m_trackActions
 List of ATLAS actions.

Detailed Description

Atlas subclass of the G4 tracking action.

Maintains a list of custom tracking actions and when invoked by Geant4 will forard the call to each of them in turn.

Todo
TODO lifetime management of wrapper actions.
Author
Steve Farrell Steve.nosp@m.n.Fa.nosp@m.rrell.nosp@m.@cer.nosp@m.n.ch

Definition at line 27 of file G4AtlasTrackingAction.h.

Constructor & Destructor Documentation

◆ G4AtlasTrackingAction()

G4UA::G4AtlasTrackingAction::G4AtlasTrackingAction ( )

Constructor.

Definition at line 14 of file G4AtlasTrackingAction.cxx.

15 {
16 }

Member Function Documentation

◆ addTrackAction()

void G4UA::G4AtlasTrackingAction::addTrackAction ( G4UserTrackingAction * action)

Add one action to the list.

Definition at line 43 of file G4AtlasTrackingAction.cxx.

44 {
45 m_trackActions.push_back(action);
46 }
std::vector< G4UserTrackingAction * > m_trackActions
List of ATLAS actions.

◆ PostUserTrackingAction()

void G4UA::G4AtlasTrackingAction::PostUserTrackingAction ( const G4Track * trk)
finaloverride

Geant4 method for post-tracking action.

This method forwards the G4 call onto each of its post-tracking ATLAS actions.

Definition at line 32 of file G4AtlasTrackingAction.cxx.

33 {
34 // Loop over my post-actions and apply each one in turn
35 for(auto action : m_trackActions){
36 action->PostUserTrackingAction(trk);
37 }
38 }

◆ PreUserTrackingAction()

void G4UA::G4AtlasTrackingAction::PreUserTrackingAction ( const G4Track * trk)
finaloverride

Geant4 method for pre-tracking action.

This method forwards the G4 call onto each of its pre-tracking ATLAS actions.

Definition at line 21 of file G4AtlasTrackingAction.cxx.

22 {
23 // Loop over my pre-actions and apply each one in turn
24 for(auto action : m_trackActions){
25 action->PreUserTrackingAction(trk);
26 }
27 }

Member Data Documentation

◆ m_trackActions

std::vector<G4UserTrackingAction*> G4UA::G4AtlasTrackingAction::m_trackActions
private

List of ATLAS actions.

Definition at line 51 of file G4AtlasTrackingAction.h.


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