ATLAS Offline Software
Loading...
Searching...
No Matches
ISF::ISimulationSvc Class Referenceabstract

@ class ISimulationSvc More...

#include <ISimulationSvc.h>

Inheritance diagram for ISF::ISimulationSvc:
Collaboration diagram for ISF::ISimulationSvc:

Public Member Functions

 ISimulationSvc ()
 DeclareInterfaceID (ISimulationSvc, 1, 0)
 Creates the InterfaceID and interfaceID() method.
virtual StatusCode setParticleBroker (IParticleBroker *broker)=0
 Inform the SimulationSvc about the ParticleBroker.
virtual StatusCode simulateVector (const ISFParticleVector &particles, McEventCollection *mcEventCollection, McEventCollection *shadowTruth=nullptr)=0
 Simulation call for vectors of particles.
virtual StatusCode simulate (ISFParticle &isp, McEventCollection *mcEventCollection)=0
 Simulation call for individual particles.
virtual const std::string & simSvcDescriptor ()=0
 Return the simulation service descriptor.
virtual StatusCode setupEvent ()=0
 Setup Event chain - in case of a begin-of event action is needed, to be called by simulation kernel.
virtual StatusCode releaseEvent ()=0
 Release Event chain - in case of an end-of event action is needed, to be called by simulation kernel.
void assignSimSvcID (SimSvcID id)
 Assign a simulation service ID.
SimSvcID simSvcID ()
 Return the simulation service ID.

Private Attributes

SimSvcID m_ssvcID {ISF::fUndefinedSimID}

Detailed Description

@ class ISimulationSvc

Main interface of either geometrical of flavor simulation service. The SimulationSvc does not take ownership of the StackParticle. The IStackSvc and ITruthSvc handles are provided by the kernel to force one unique configuration.

@ author Andreas.Salzburger -at- cern.ch, Michael.Duehrssen -at- cern.ch , Elmar.Ritsch -at- cern.ch

Definition at line 37 of file ISimulationSvc.h.

Constructor & Destructor Documentation

◆ ISimulationSvc()

ISF::ISimulationSvc::ISimulationSvc ( )
inline

Definition at line 43 of file ISimulationSvc.h.

43{ };

Member Function Documentation

◆ assignSimSvcID()

void ISF::ISimulationSvc::assignSimSvcID ( SimSvcID id)
inline

Assign a simulation service ID.

inline methods

Definition at line 79 of file ISimulationSvc.h.

◆ DeclareInterfaceID()

ISF::ISimulationSvc::DeclareInterfaceID ( ISimulationSvc ,
1 ,
0  )

Creates the InterfaceID and interfaceID() method.

◆ releaseEvent()

virtual StatusCode ISF::ISimulationSvc::releaseEvent ( )
pure virtual

Release Event chain - in case of an end-of event action is needed, to be called by simulation kernel.

◆ setParticleBroker()

virtual StatusCode ISF::ISimulationSvc::setParticleBroker ( IParticleBroker * broker)
pure virtual

Inform the SimulationSvc about the ParticleBroker.

◆ setupEvent()

virtual StatusCode ISF::ISimulationSvc::setupEvent ( )
pure virtual

Setup Event chain - in case of a begin-of event action is needed, to be called by simulation kernel.

◆ simSvcDescriptor()

virtual const std::string & ISF::ISimulationSvc::simSvcDescriptor ( )
pure virtual

Return the simulation service descriptor.

◆ simSvcID()

SimSvcID ISF::ISimulationSvc::simSvcID ( )
inline

Return the simulation service ID.

Definition at line 80 of file ISimulationSvc.h.

80{ return m_ssvcID; }

◆ simulate()

virtual StatusCode ISF::ISimulationSvc::simulate ( ISFParticle & isp,
McEventCollection * mcEventCollection )
pure virtual

Simulation call for individual particles.

◆ simulateVector()

virtual StatusCode ISF::ISimulationSvc::simulateVector ( const ISFParticleVector & particles,
McEventCollection * mcEventCollection,
McEventCollection * shadowTruth = nullptr )
pure virtual

Simulation call for vectors of particles.

Member Data Documentation

◆ m_ssvcID

SimSvcID ISF::ISimulationSvc::m_ssvcID {ISF::fUndefinedSimID}
private

Definition at line 75 of file ISimulationSvc.h.

@ fUndefinedSimID
Definition SimSvcID.h:32

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