ATLAS Offline Software
Loading...
Searching...
No Matches
IFastSimulation.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 G4ATLASINTERFACES_IFASTSIMULATION_H
6#define G4ATLASINTERFACES_IFASTSIMULATION_H
7
8#include "GaudiKernel/IAlgTool.h"
9
17class G4VFastSimulationModel;
18
19class IFastSimulation : virtual public IAlgTool {
20 public:
22 virtual ~IFastSimulation() {}
28 virtual StatusCode initializeFastSim() = 0;
29
32 virtual StatusCode BeginOfAthenaEvent() = 0;
33
38 virtual StatusCode EndOfAthenaEvent() = 0;
39
40 protected:
44 virtual G4VFastSimulationModel* makeFastSimModel() = 0;
45};
46
47#endif
virtual G4VFastSimulationModel * makeFastSimModel()=0
Method to make the actual fast simulation model itself, which will be owned by the tool.
virtual ~IFastSimulation()
virtual StatusCode EndOfAthenaEvent()=0
Method to be called at the end of the athena event.
DeclareInterfaceID(IFastSimulation, 1, 0)
Creates the InterfaceID and interfaceID() method.
virtual StatusCode initializeFastSim()=0
Method to initialize the Fast Simulation mdoel itself - this is our hook for initialization in G4,...
virtual StatusCode BeginOfAthenaEvent()=0
Method to be called at the beginning of the athena event.