|
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef G4ATLASTOOLS_FASTSIMULATIONBASE_H
6 #define G4ATLASTOOLS_FASTSIMULATIONBASE_H
14 #include "G4VFastSimulationModel.hh"
15 #ifdef G4MULTITHREADED
16 # include "tbb/concurrent_unordered_map.h"
53 Gaudi::Property<std::vector<std::string> >
m_regionNames{
this,
"RegionNames", {}};
65 #ifdef G4MULTITHREADED
68 G4VFastSimulationModel*,
69 std::hash<std::thread::id> > FastSimModelThreadMap_t;
71 FastSimModelThreadMap_t m_fastsimmodelThreadMap;
void deleteFastSimModel()
Delete the current model.
G4VFastSimulationModel * m_FastSimModel
The Fast Simulation Model to which this thing corresponds.
virtual ~FastSimulationBase()
Gaudi::Property< bool > m_noRegions
This Fast Simulation has no regions associated with it.
void setFastSimModel(G4VFastSimulationModel *)
Set the current model. In hive, this gets assigned as the thread-local model.
::StatusCode StatusCode
StatusCode definition for legacy code.
FastSimulationBase(const std::string &type, const std::string &name, const IInterface *parent)
virtual StatusCode BeginOfAthenaEvent() override
Begin of an athena event - do anything that needs to be done at the beginning of each athena event.
Gaudi::Property< std::vector< std::string > > m_regionNames
All the regions to which this fast sim is assigned.
G4VFastSimulationModel * getFastSimModel()
Retrieve the current Fast Simulation Model.
StatusCode initializeFastSim() override
Construct and setup the fast simulation model.
virtual StatusCode EndOfAthenaEvent() override
End of an athena event - do any tidying up required at the end of each athena event.