7#ifndef BESKERNEL_IBESRNDMGENSVC_H
8# define BESKERNEL_IBESRNDMGENSVC_H
11#ifndef GAUDIKERNEL_IINTERFACE_H
12 #include "GaudiKernel/IInterface.h"
18#ifndef HepRandomEngine_h
19 #include "CLHEP/Random/RandomEngine.h"
28 virtual CLHEP::HepRandomEngine*
GetEngine(
const std::string& StreamName)=0;
30 const std::string& StreamName)=0;
33 const std::string& StreamName)=0;
38 virtual void print(
const std::string& StreamName)=0;
52 static const InterfaceID _IID(
"IBesRndmGenSvc", 1, 0);
manage multiple CLHEP random engines as named streams
virtual void print(const std::string &StreamName)=0
Print methods.
virtual void setGenseed(long)=0
virtual CLHEP::HepRandomEngine * GetEngine(const std::string &StreamName)=0
Interface to the CLHEP engine.
static const InterfaceID & interfaceID()
Gaudi boilerplate.
virtual ~IBesRndmGenSvc()
virtual void CreateStream(long seed1, const std::string &StreamName)=0
virtual CLHEP::HepRandomEngine * setOnDefinedSeeds(int EventNumber, const std::string &StreamName)=0
set the seeds for an engine. First param will usually be the event number
virtual long getGenseed()=0