CMS 3D CMS Logo

Classes | Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Attributes | Static Private Attributes

ThePEG::RandomEngineGlue Class Reference

#include <RandomEngineGlue.h>

List of all members.

Classes

class  Proxy

Public Member Functions

void flush ()
 RandomEngineGlue ()
virtual ~RandomEngineGlue ()

Static Public Member Functions

static void Init ()

Protected Member Functions

virtual IBPtr clone () const
virtual void doinit () throw (InitException)
virtual void fill ()
virtual IBPtr fullclone () const
virtual void setSeed (long seed)

Private Attributes

Proxy::ProxyID proxyID
CLHEP::HepRandomEngine * randomEngine

Static Private Attributes

static ClassDescription
< RandomEngineGlue
initRandomEngineGlue

Detailed Description

Definition at line 23 of file RandomEngineGlue.h.


Constructor & Destructor Documentation

RandomEngineGlue::RandomEngineGlue ( )

Definition at line 18 of file RandomEngineGlue.cc.

RandomEngineGlue::~RandomEngineGlue ( ) [virtual]

Definition at line 23 of file RandomEngineGlue.cc.

{
}

Member Function Documentation

virtual IBPtr ThePEG::RandomEngineGlue::clone ( void  ) const [inline, protected, virtual]

Definition at line 49 of file RandomEngineGlue.h.

{ return new_ptr(*this); }
void RandomEngineGlue::doinit ( ) throw (InitException) [protected, virtual]

Definition at line 45 of file RandomEngineGlue.cc.

References ThePEG::Proxy< Proxy >::find(), flush(), and proxyID.

{
        RandomGenerator::doinit();

        boost::shared_ptr<Proxy> proxy = Proxy::find(proxyID);
        if (!proxy)
                throw InitException();

        proxy->instance = this;
        flush();
}
void RandomEngineGlue::fill ( void  ) [protected, virtual]

Definition at line 33 of file RandomEngineGlue.cc.

References randomEngine.

{
        nextNumber = theNumbers.begin();
        for(RndVector::iterator it = nextNumber; it != theNumbers.end(); ++it)
                *it = randomEngine->flat();
}
void RandomEngineGlue::flush ( )

Definition at line 27 of file RandomEngineGlue.cc.

Referenced by doinit(), and ThePEGInterface::flushRandomNumberGenerator().

{
        RandomGenerator::flush();
        gaussSaved = false;
}
virtual IBPtr ThePEG::RandomEngineGlue::fullclone ( ) const [inline, protected, virtual]

Definition at line 50 of file RandomEngineGlue.h.

{ return new_ptr(*this); }
void RandomEngineGlue::Init ( void  ) [static]

Definition at line 59 of file RandomEngineGlue.cc.

References proxyID.

                            {
        typedef Proxy::ProxyID ProxyID;

        static ClassDocumentation<RandomEngineGlue> documentation
                ("Interface to the CMSSW RandomNumberEngine.");
        static Parameter<RandomEngineGlue, ProxyID> interfaceProxyID
                ("ProxyID", "The ProxyID.",
                 &RandomEngineGlue::proxyID, ProxyID(),
                 ProxyID(), ProxyID(), false, false, false);

        interfaceProxyID.rank(11);
}
void RandomEngineGlue::setSeed ( long  seed) [protected, virtual]

Definition at line 40 of file RandomEngineGlue.cc.

{
        // we ignore this, CMSSW overrides the seed from ThePEG
}

Member Data Documentation

ClassDescription< RandomEngineGlue > RandomEngineGlue::initRandomEngineGlue [static, private]

Definition at line 58 of file RandomEngineGlue.h.

Definition at line 55 of file RandomEngineGlue.h.

Referenced by doinit(), and Init().

CLHEP::HepRandomEngine* ThePEG::RandomEngineGlue::randomEngine [private]

Definition at line 56 of file RandomEngineGlue.h.

Referenced by fill().