59 #include "rnr/rnrconfig.h" 76 if( luSeed == AUTO_SEED )
78 luSeed = (ulong_t)time(NULL);
81 seed[0] = (ushort_t)(luSeed & 0xffff);
82 seed[1] = (ushort_t)((luSeed >> 16) & 0xffff);
83 seed[2] = (ushort_t)(seed[0] << 8) | (ushort_t)(seed[1] >> 8);
94 return (
int)((double)(nMax - nMin) * lfRandVal + nMin);
103 return (s64_t)((double)(nMax - nMin) * lfRandVal + nMin);
112 return (
float)((double)(fMax - fMin) * lfRandVal + fMin);
float uniform(float fMin=0.0, float fMax=1.0)
Generates a random float uniformally distrubuted between [fMin, fMax].
struct drand48_data m_randState
random generator opaque state.
int randrange(int nMin=0, int nMax=INT_MAX)
Generates a random integer uniformally distrubuted between [nMin, nMax].
Random variable generator class interface.
Random(ulong_t luSeed=AUTO_SEED)
Default initialization constructor.