ATLAS Offline Software
Loading...
Searching...
No Matches
G4UA::UserActionToolBase< ActionType > Class Template Referenceabstract

abstract template utility base-class for G4 user-action tools. More...

#include <UserActionToolBase.h>

Inheritance diagram for G4UA::UserActionToolBase< ActionType >:
Collaboration diagram for G4UA::UserActionToolBase< ActionType >:

Public Member Functions

 UserActionToolBase (const std::string &type, const std::string &name, const IInterface *parent)
 Standard constructor.
virtual StatusCode fillUserAction (G4AtlasUserActions &actionLists) override final
 Fill the user action lists.
StatusCode BeginOfAthenaEvent (HitCollectionMap &) override
 Calls BeginOfAthenaEvent.
StatusCode EndOfAthenaEvent (HitCollectionMap &) override
 Calls EndOfAthenaEvent.

Protected Member Functions

virtual std::unique_ptr< ActionType > makeAndFillAction (G4AtlasUserActions &actionLists)=0
 Make the action and push onto the lists.

Protected Attributes

ThreadSpecificUserAction< ActionType > m_actions
 Thread-specific storage of the user action.

Detailed Description

template<class ActionType>
class G4UA::UserActionToolBase< ActionType >

abstract template utility base-class for G4 user-action tools.

The template parameter of this class should be the concrete action type.

Author
Steve Farrell Steve.nosp@m.n.Fa.nosp@m.rrell.nosp@m.@cer.nosp@m.n.ch

Definition at line 34 of file UserActionToolBase.h.

Constructor & Destructor Documentation

◆ UserActionToolBase()

template<class ActionType>
G4UA::UserActionToolBase< ActionType >::UserActionToolBase ( const std::string & type,
const std::string & name,
const IInterface * parent )
inline

Standard constructor.

Definition at line 40 of file UserActionToolBase.h.

43 {}
abstract template utility base-class for G4 user-action tools.

Member Function Documentation

◆ BeginOfAthenaEvent()

template<class ActionType>
StatusCode G4UA::UserActionToolBase< ActionType >::BeginOfAthenaEvent ( HitCollectionMap & )
inlineoverride

Calls BeginOfAthenaEvent.

Definition at line 59 of file UserActionToolBase.h.

59{return StatusCode::SUCCESS;};

◆ EndOfAthenaEvent()

template<class ActionType>
StatusCode G4UA::UserActionToolBase< ActionType >::EndOfAthenaEvent ( HitCollectionMap & )
inlineoverride

Calls EndOfAthenaEvent.

Definition at line 61 of file UserActionToolBase.h.

61{return StatusCode::SUCCESS;};

◆ fillUserAction()

template<class ActionType>
virtual StatusCode G4UA::UserActionToolBase< ActionType >::fillUserAction ( G4AtlasUserActions & actionLists)
inlinefinaloverridevirtual

Fill the user action lists.

Definition at line 47 of file UserActionToolBase.h.

48 {
50 if(myAction == nullptr) {
51 ATH_MSG_ERROR( "Failed to construct user action in " << name() );
53 }
56 }
#define ATH_MSG_ERROR(x)
virtual std::unique_ptr< ActionType > makeAndFillAction(G4AtlasUserActions &actionLists)=0
Make the action and push onto the lists.
ThreadSpecificUserAction< ActionType > m_actions
Thread-specific storage of the user action.

◆ makeAndFillAction()

template<class ActionType>
virtual std::unique_ptr< ActionType > G4UA::UserActionToolBase< ActionType >::makeAndFillAction ( G4AtlasUserActions & actionLists)
protectedpure virtual

Make the action and push onto the lists.

Implemented in ActsGeantFollowerTool, G4UA::AthenaStackingActionTool, G4UA::AthenaTrackingActionTool, G4UA::CaloG4::CalibrationDefaultProcessingTool, G4UA::CheckActivationTool, G4UA::CosmicPerigeeActionTool, G4UA::DebugSteppingActionTool, G4UA::EnergyConservationTestTool, G4UA::EnergyLossRecorderTool, G4UA::FastIDKillerTool, G4UA::FixG4CreatorProcessTool, G4UA::FluxRecorderTool, G4UA::G4AtlantisDumperTool, G4UA::G4CosmicAndFilterTool, G4UA::G4CosmicFilterTool, G4UA::G4CosmicOrFilterTool, G4UA::G4HitFilterTool, G4UA::G4SimTimerTool, G4UA::G4TrackCounterTool, G4UA::Geant4SetupCheckerTool, G4UA::GeantFollowerMSTool, G4UA::GeantFollowerTool, G4UA::HIPKillerTool, G4UA::HIPLArVolumeAcceptTool, G4UA::HitWrapperTool, G4UA::HyperspaceCatcherTool, G4UA::iGeant4::MCTruthUserActionTool, G4UA::iGeant4::PhysicsValidationUserActionTool, G4UA::iGeant4::TrackProcessorUserActionFullG4Tool, G4UA::iGeant4::TrackProcessorUserActionPassBackTool, G4UA::LArGeoH62004EventActionTool, G4UA::LArGeoH62004SteppingActionTool, G4UA::LengthIntegratorTool, G4UA::LooperKillerTool, G4UA::LooperThresholdSetTool, G4UA::MaterialStepRecorderTool, G4UA::MCTruthSteppingActionTool, G4UA::MomentumConservationTool, G4UA::PhotonKillerTool, G4UA::RadiationMapsMakerTool, G4UA::RadLengthActionTool, G4UA::RadLenNtupleTool, G4UA::ScoringPlaneTool, G4UA::ScoringVolumeTrackKillerTool, G4UA::SG_StepNtupleTool, G4UA::StepHistogramTool, G4UA::StepNtupleTool, G4UA::SteppingValidationTool, G4UA::StoppedParticleActionTool, G4UA::SyncEventActionTool, G4UA::SyncPrimaryGeneratorActionTool, G4UA::SyncRunActionTool, G4UA::TestActionEHistTool, G4UA::TestActionShowerLibTool, G4UA::TestActionTimerTool, G4UA::TestActionTool, G4UA::TestActionVPTimerTool, G4UA::TestBoundariesUserActionTool, G4UA::VerboseSelectorTool, G4UA::VolumeDebuggerTool, and G4UA::VolumeDumperTool.

Member Data Documentation

◆ m_actions

template<class ActionType>
ThreadSpecificUserAction<ActionType> G4UA::UserActionToolBase< ActionType >::m_actions
protected

Thread-specific storage of the user action.

Definition at line 70 of file UserActionToolBase.h.


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