ATLAS Offline Software
FastSimulationBase.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef G4ATLASTOOLS_FASTSIMULATIONBASE_H
6 #define G4ATLASTOOLS_FASTSIMULATIONBASE_H
7 
8 // Base classes
11 
12 // Members
13 #include <G4Region.hh>
14 
15 // STL library
16 #include <string>
17 
27 class FastSimulationBase : public extends<AthAlgTool, IFastSimulation> {
28  public:
29  FastSimulationBase(const std::string& type, const std::string& name,
30  const IInterface *parent);
31 
39  StatusCode initializeFastSim() override;
40 
42  virtual StatusCode BeginOfAthenaEvent() override { return StatusCode::SUCCESS; }
43 
45  virtual StatusCode EndOfAthenaEvent() override { return StatusCode::SUCCESS; }
46 
47  protected:
48  // Helper to retrieve the region to which this fast simulation is assigned from the region store.
49  G4Region* getRegion() const;
50 
52  Gaudi::Property<std::string> m_regionName{this, "RegionName", ""};
54  Gaudi::Property<bool> m_noRegions{this, "NoRegions", false};
55 };
56 
57 #endif
FastSimulationBase::m_regionName
Gaudi::Property< std::string > m_regionName
The region to which this fast sim is assigned.
Definition: FastSimulationBase.h:52
FastSimulationBase
Definition: FastSimulationBase.h:27
IFastSimulation.h
python.CaloAddPedShiftConfig.type
type
Definition: CaloAddPedShiftConfig.py:42
FastSimulationBase::m_noRegions
Gaudi::Property< bool > m_noRegions
This Fast Simulation has no regions associated with it.
Definition: FastSimulationBase.h:54
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthAlgTool.h
FastSimulationBase::FastSimulationBase
FastSimulationBase(const std::string &type, const std::string &name, const IInterface *parent)
Definition: FastSimulationBase.cxx:12
FastSimulationBase::BeginOfAthenaEvent
virtual StatusCode BeginOfAthenaEvent() override
Begin of an athena event - do anything that needs to be done at the beginning of each athena event.
Definition: FastSimulationBase.h:42
test_pyathena.parent
parent
Definition: test_pyathena.py:15
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:240
FastSimulationBase::initializeFastSim
StatusCode initializeFastSim() override
Construct and setup the fast simulation model.
Definition: FastSimulationBase.cxx:27
FastSimulationBase::getRegion
G4Region * getRegion() const
Definition: FastSimulationBase.cxx:17
FastSimulationBase::EndOfAthenaEvent
virtual StatusCode EndOfAthenaEvent() override
End of an athena event - do any tidying up required at the end of each athena event.
Definition: FastSimulationBase.h:45