41#ifndef HepRanshiEngine_h
42#define HepRanshiEngine_h
44#include "CLHEP/Random/defs.h"
45#include "CLHEP/Random/RandomEngine.h"
53class RanshiEngine:
public HepRandomEngine {
77 void saveStatus(
const char filename[] =
"RanshiEngine.conf")
const;
88 operator unsigned int();
90 virtual std::ostream &
put (std::ostream & os)
const;
91 virtual std::istream &
get (std::istream & is);
93 virtual std::istream &
getState ( std::istream & is );
98 std::vector<unsigned long>
put ()
const;
99 bool get (
const std::vector<unsigned long> & v);
100 bool getState (
const std::vector<unsigned long> & v);
103 static int numEngines;
104 enum {numBuff = 512};
106 unsigned int halfBuff, numFlats;
107 unsigned int buffer[numBuff];
108 unsigned int redSpin;
110 static const unsigned int VECTOR_STATE_SIZE = numBuff + 4;
116#ifdef ENABLE_BACKWARDS_COMPATIBILITY
118using namespace CLHEP;
virtual std::istream & getState(std::istream &is)
RanshiEngine(std::istream &is)
void flatArray(const int size, double *vect)
void saveStatus(const char filename[]="RanshiEngine.conf") const
std::vector< unsigned long > put() const
static std::string engineName()
void restoreStatus(const char filename[]="RanshiEngine.conf")
bool getState(const std::vector< unsigned long > &v)
void setSeeds(const long *seeds, int)
virtual std::istream & get(std::istream &is)
virtual std::ostream & put(std::ostream &os) const
static std::string beginTag()
bool get(const std::vector< unsigned long > &v)
RanshiEngine(int rowIndex, int colIndex)
void setSeed(long seed, int)