|
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef GENERATORMODULES_GENMODULE_H
6 #define GENERATORMODULES_GENMODULE_H
10 #include "CLHEP/Random/RandomEngine.h"
11 #include "CLHEP/Random/RandPoisson.h"
79 CLHEP::HepRandomEngine*
getRandomEngine(
const std::string&
streamName,
unsigned long int randomSeedOffset,
const EventContext& ctx)
const;
84 IntegerProperty
m_randomSeed{
this,
"RandomSeed", 1234567,
"Random seed for the built-in random engine"};
87 BooleanProperty
m_isAfterburner{
this,
"IsAfterburner",
false,
"Set true if generator modifies existing events rather than creating new ones"};
90 std::shared_ptr<HepMC3::GenRunInfo> m_runinfo{};
virtual StatusCode fillEvt(HepMC::GenEvent *evt)=0
For filling the HepMC event object.
virtual StatusCode callGenerator()
For calling the generator on each iteration of the event loop.
ServiceHandle< IIncidentSvc > m_incidentSvc
Handle on the incident service.
CLHEP::HepRandomEngine * getRandomEngine(const std::string &streamName, const EventContext &ctx) const
Base class for common behaviour of generator interfaces.
virtual StatusCode genuserInitialize()
For initialization of user code, if required. Called after genInitialize.
ServiceHandle< IAthRNGSvc > m_rndmSvc
Data members.
virtual StatusCode genInitialize()
For initializing the generator, if required.
Base class for common behaviour of MC truth algorithms.
virtual ~GenModule()
Virtual destructor.
::StatusCode StatusCode
StatusCode definition for legacy code.
BooleanProperty m_isAfterburner
Flag for normal vs. afterburner generators.
virtual StatusCode genFinalize()
For finalising the generator, if required.
GenModule(const std::string &name, ISvcLocator *pSvcLocator)
Constructor.
IntegerProperty m_randomSeed
Seed for random number engine.
CLHEP::HepRandomEngine * getRandomEngineDuringInitialize(const std::string &streamName, unsigned long int randomSeedOffset, unsigned int conditionsRun=1, unsigned int lbn=1) const