30 static HepRandomEngine* 
 
   31 makeAnEngine (
const std::string & 
tag, 
 
   33   if ( tag != E::beginTag() ) 
return 0;
 
   34   HepRandomEngine* eptr = 
new E;
 
   41 static HepRandomEngine* 
 
   42 makeAnEngine (
const std::vector<unsigned long> & 
v) {
 
   43   if ( (v[0] & 0xffffffffUL) != engineIDulong<E>() ) 
return 0;
 
   44   HepRandomEngine* eptr = 
new E;
 
   46   if (!success) 
return 0;
 
   55   eptr = makeAnEngine <HepJamesRandom>  (tag, is); 
if (eptr) 
return eptr;
 
   56   eptr = makeAnEngine <RanecuEngine>    (tag, is); 
if (eptr) 
return eptr;
 
   57   eptr = makeAnEngine <Ranlux64Engine>  (tag, is); 
if (eptr) 
return eptr;
 
   58   eptr = makeAnEngine <MTwistEngine>    (tag, is); 
if (eptr) 
return eptr;
 
   59   eptr = makeAnEngine <DualRand>        (tag, is); 
if (eptr) 
return eptr;
 
   60   eptr = makeAnEngine <RanluxEngine>    (tag, is); 
if (eptr) 
return eptr;
 
   61   eptr = makeAnEngine <RanshiEngine>    (tag, is); 
if (eptr) 
return eptr;
 
   62   eptr = makeAnEngine <NonRandomEngine> (tag, is); 
if (eptr) 
return eptr;
 
   63   is.clear(std::ios::badbit | is.rdstate());
 
   65     "Input mispositioned or bad in reading anonymous engine\n" 
   66         << 
"\nBegin-tag read was: " << tag 
 
   67         << 
"\nInput stream is probably fouled up\n";
 
   74   eptr = makeAnEngine <HepJamesRandom>  (
v); 
if (eptr) 
return eptr;
 
   75   eptr = makeAnEngine <RanecuEngine>    (
v); 
if (eptr) 
return eptr;
 
   76   eptr = makeAnEngine <Ranlux64Engine>  (
v); 
if (eptr) 
return eptr;
 
   77   eptr = makeAnEngine <MTwistEngine>    (
v); 
if (eptr) 
return eptr;
 
   78   eptr = makeAnEngine <DualRand>        (
v); 
if (eptr) 
return eptr;
 
   79   eptr = makeAnEngine <RanluxEngine>    (
v); 
if (eptr) 
return eptr;
 
   80   eptr = makeAnEngine <RanshiEngine>    (
v); 
if (eptr) 
return eptr;
 
   81   eptr = makeAnEngine <NonRandomEngine> (
v); 
if (eptr) 
return eptr;
 
   83     "Cannot correctly get anonymous engine from vector\n" 
   84         << 
"First unsigned long was: " << v[0] 
 
   85         << 
" Vector size was: " << v.size() <<
"\n";
 
static HepRandomEngine * newEngine(std::istream &is)
 
virtual std::istream & getState(std::istream &is)