3 #include <CLHEP/Random/RandomEngine.h>
5 #include <ThePEG/Interface/ClassDocumentation.h>
6 #include <ThePEG/Interface/InterfacedBase.h>
7 #include <ThePEG/Interface/Parameter.h>
8 #include <ThePEG/Utilities/ClassTraits.h>
10 #include <ThePEG/Repository/StandardRandom.h>
16 using namespace ThePEG;
23 RandomGenerator::flush();
30 <<
"the engine pointer was null. This might mean that the code\n"
31 <<
"was tried to generate a random number outside the event and\n"
32 <<
"beginLuminosityBlock methods, which is not allowed.\n";
34 nextNumber = theNumbers.begin();
35 for (RndVector::iterator it = nextNumber; it != theNumbers.end(); ++it)
44 RandomGenerator::doinit();
48 throw InitException();
50 proxy->instance =
this;
60 static ClassDocumentation<RandomEngineGlue> documentation(
"Interface to the CMSSW RandomNumberEngine.");
61 static Parameter<RandomEngineGlue, ProxyID> interfaceProxyID(
64 interfaceProxyID.rank(11);
CLHEP::HepRandomEngine * randomEngine
void setSeed(long seed) override
~RandomEngineGlue() override
void doinit() noexcept(false) override
static std::shared_ptr< Proxy > find(ProxyID id)
CLHEP::HepRandomEngine * randomEngine
static ClassDescription< RandomEngineGlue > initRandomEngineGlue