5#ifndef GENERATOR_PHOTOSPP_H
6#define GENERATOR_PHOTOSPP_H
9#include "GaudiKernel/ServiceHandle.h"
12#include "CLHEP/Random/RandomEngine.h"
14extern "C" double phoranc_(
int *idum);
21 Photospp_i(
const std::string &name, ISvcLocator *pSvcLocator);
37 friend double ::phoranc_(
int *idum);
46 CLHEP::HepRandomEngine*
getRandomEngine(
const std::string& streamName,
unsigned long int randomSeedOffset,
const EventContext& ctx)
const;
47 CLHEP::HepRandomEngine*
getRandomEngineDuringInitialize(
const std::string& streamName,
unsigned long int randomSeedOffset,
unsigned int conditionsRun=1,
unsigned int lbn=1)
const;
54 IntegerProperty
m_dsid{
this,
"Dsid", 999999};
57 IntegerProperty
m_randomSeed{
this,
"RandomSeed", 1234567,
"Random seed for the built-in random engine"};
89 DoubleProperty
m_alphaQED{
this,
"AlphaQED", 0.00729735039};
double phoranc_(int *idum)
AthAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor with parameters:
BooleanProperty m_createHistory
Whether to create history entries (default = yes)
BooleanProperty m_photonSplitting
Whether to include photon splitting.
StatusCode execute()
Run Photos on one event Will require a pre-existing HepMC event in Storegate.
void setupPhotos()
Set up the Photos class This may be called in the initialize method or directly before the generation...
BooleanProperty m_stopCritical
Whether to stop on critical error (default = no)
Photospp_i(const std::string &name, ISvcLocator *pSvcLocator)
Standard Athena algorithm constructor.
BooleanProperty m_delayInitialisation
Delay initialisation until just before first event execution (default = no)
ServiceHandle< IAthRNGSvc > m_rndmSvc
CLHEP::HepRandomEngine * getRandomEngineDuringInitialize(const std::string &streamName, unsigned long int randomSeedOffset, unsigned int conditionsRun=1, unsigned int lbn=1) const
BooleanProperty m_WMECorrection
Whether to apply ME correction to W decays (default = no, until validated)
IntegerProperty m_randomSeed
Seed for random number engine.
DoubleProperty m_maxWtInterference
void reseedRandomEngine(const std::string &streamName, const EventContext &ctx)
CLHEP::HepRandomEngine * getRandomEngine(const std::string &streamName, unsigned long int randomSeedOffset, const EventContext &ctx) const
DoubleProperty m_infraRedCutOff
StringProperty m_genEventKey
The GenEvent StoreGate key - FIXME should be using Read/WriteHandles here.
BooleanProperty m_ZMECorrection
Whether to apply ME correction to Z decays (default = no, until validated)
static CLHEP::HepRandomEngine * p_rndmEngine
BooleanProperty m_exponentiation
Whether to use exponentiation mode (default = yes)
StatusCode initialize()
Initialise the Photospp_i algorithm and required services.
DoubleProperty m_alphaQED
Value of alpha_QED.