5#ifndef ISF_GEANT4SIMSVC_H
6#define ISF_GEANT4SIMSVC_H 1
12#include "GaudiKernel/ServiceHandle.h"
13#include "GaudiKernel/ToolHandle.h"
31 Geant4SimSvc(
const std::string& name, ISvcLocator* pSvcLocator);
38 virtual StatusCode
finalize()
override;
48 std::shared_ptr<HitCollectionMap>)
override;
53 McEventCollection* mcEventCollection, std::shared_ptr<HitCollectionMap> hitCollections,
Define macros for attributes used to control the static checker.
#define ATLAS_NOT_THREAD_SAFE
getNoisyStrip() Find noisy strips from hitmaps and write out into xml/db formats
Small wrapper around hit collection map to facilitate accessing the hit collection.
Base class for an ISimulatorSvc which requires a Geant4 UserInfo object.
virtual StatusCode simulateVector(const ISFParticleVector &particles, McEventCollection *mcEventCollection, std::shared_ptr< HitCollectionMap > hitCollections, McEventCollection *)
Simulation call for vectors of particles.
virtual StatusCode simulate(ISFParticle &, McEventCollection *, std::shared_ptr< HitCollectionMap >)=0
Simulation call for individual particles.
virtual StatusCode setupEvent(HitCollectionMap &)=0
Setup Event chain - in case of a begin-of event action is needed.
virtual StatusCode releaseEvent(HitCollectionMap &)=0
Release Event chain - in case of an end-of event action is needed.
The generic ISF particle definition,.
This defines the McEventCollection, which is really just an ObjectVector of McEvent objectsFile: Gene...
virtual StatusCode simulate(ISF::ISFParticle &isp, McEventCollection *mcEventCollection, std::shared_ptr< HitCollectionMap >) override
Simulation Call.
Geant4SimSvc()
Default constructor.
virtual StatusCode releaseEvent(HitCollectionMap &) override
Release Event chain - in case of an end-of event action is needed.
Geant4SimSvc(const std::string &name, ISvcLocator *pSvcLocator)
Constructor.
virtual StatusCode setupEvent(HitCollectionMap &) override
Setup Event chain - in case of a begin-of event action is needed.
PublicToolHandle< ISF::ISimulatorTool > m_simulatorTool
virtual StatusCode finalize() override
framework methods
virtual StatusCode simulateVector(const ISF::ISFParticleVector &particles, McEventCollection *mcEventCollection, std::shared_ptr< HitCollectionMap > hitCollections, McEventCollection *shadowTruth=nullptr) override
Simulation Call for vector of ISF particles.
ISF::BaseSimulatorG4Tool * m_simulatorG4Tool
pointer to the downcasted G4 simulator tool
std::vector< ISF::ISFParticle * > ISFParticleVector
ISFParticle vector.