38 #ifndef HepRandomEngine_h
39 #define HepRandomEngine_h 1
47 #include "CLHEP/Random/defs.h"
67 virtual double flat() = 0;
71 virtual void flatArray(
const int size,
double* vect) = 0;
74 virtual void setSeed(
long seed,
int) = 0;
77 virtual void setSeeds(
const long * seeds,
int) = 0;
81 virtual void saveStatus(
const char filename[] =
"Config.conf")
const = 0;
85 virtual void restoreStatus(
const char filename[] =
"Config.conf" ) = 0;
92 virtual std::string
name()
const = 0;
95 virtual std::ostream &
put (std::ostream & os)
const;
96 virtual std::istream &
get (std::istream & is);
100 virtual std::istream &
getState ( std::istream & is );
109 virtual std::vector<unsigned long>
put ()
const;
110 virtual bool get (
const std::vector<unsigned long> & v);
111 virtual bool getState (
const std::vector<unsigned long> & v);
120 virtual operator double();
121 virtual operator float();
122 virtual operator unsigned int();
157 static bool checkFile (std::istream & file,
158 const std::string & filename,
159 const std::string & classname,
160 const std::string & methodname);
167 template <
class IS,
class T>
169 std::string firstWord;
171 if (firstWord == key)
return true;
172 std::istringstream reread(firstWord);
179 #ifdef ENABLE_BACKWARDS_COMPATIBILITY
181 using namespace CLHEP;
184 #include "CLHEP/Random/RandomEngine.icc"