ATLAS Offline Software
Loading...
Searching...
No Matches
FastSimulationMasterTool.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 G4ATLASSERVICES_FASTSIMULATIONMASTERTOOL_H
6#define G4ATLASSERVICES_FASTSIMULATIONMASTERTOOL_H
7
8// Base classes
11
12// Members
13#include "GaudiKernel/ToolHandle.h" // For tool handle array
14#include "G4AtlasInterfaces/IFastSimulation.h" // Thing we have a handle on
15
16class FastSimulationMasterTool : public extends<AthAlgTool , IFastSimulationMasterTool> {
17 public:
18 // Standard constructor and destructor
19 FastSimulationMasterTool(const std::string& type, const std::string& name, const IInterface* parent);
21
22 // Base class methods
23 StatusCode initializeFastSims() override final;
24 StatusCode BeginOfAthenaEvent() override final;
25 StatusCode EndOfAthenaEvent() override final;
26
27 private:
28 ToolHandleArray<IFastSimulation> m_FastSimList{this, "FastSimulations", {}, "Tool handle array of fast simulation tools"};
29
30};
31
32#endif
StatusCode initializeFastSims() override final
StatusCode EndOfAthenaEvent() override final
!< Base class method that calls BeginOfAthenaEvent for all fast simulation models.
StatusCode BeginOfAthenaEvent() override final
!< Base class method to initialize all the fast simulation models
ToolHandleArray< IFastSimulation > m_FastSimList
!< Base class method that calls EndOfAthenaEvent for all fast simulation models.
FastSimulationMasterTool(const std::string &type, const std::string &name, const IInterface *parent)
Abstract interface to service for Geant4 fast simulation classes.
#define private