Gray C++ Libraries  0.0.2
A set of C++ libraries for MSVC, GNU on Windows, WinCE, Linux
GrayLib::cRandomMersenne Class Reference

#include <cRandomFloat.h>

Inheritance diagram for GrayLib::cRandomMersenne:
GrayLib::cRandomFloat Gray::cRandomBase Gray::IRandomNoise

Public Member Functions

 cRandomMersenne (const void *pData, size_t iSize)
 
virtual ~cRandomMersenne ()
 
virtual void InitSeed (const void *pData, size_t iSize) override
 
virtual UINT get_RandUns () override
 
- Public Member Functions inherited from GrayLib::cRandomFloat
virtual double get_RandDouble ()
 the default random number generator. More...
 
virtual float get_RandFloat ()
 
double GetRandDX (double nScale)
 
float GetRandFX (float nScale)
 
float GetRandFRange (float fRangeLo, float fRangeHi)
 
 UNITTEST_FRIEND (cRandomFloat)
 
- Public Member Functions inherited from Gray::cRandomBase
 cRandomBase () noexcept
 
virtual ~cRandomBase ()
 
void InitSeed (IRandomNoise *pSrc, size_t iSize)
 the default random number generator. NOT Thread Safe! More...
 
void InitSeedDefault (size_t iSize=sizeof(int))
 
void InitSeedUns (UINT iSeed)
 
virtual HRESULT GetNoise (void *pData, size_t iSize) override
 fill array with random. return # filled. More...
 
bool GetRandBool ()
 
virtual UINT GetRandUX (UINT nScale)
 
int GetRandIRange (int iRangeLo, int iRangeHi)
 

Additional Inherited Members

- Public Types inherited from Gray::cRandomBase
typedef UINT SEED_t
 default seed size might be 32 or 64 bit depending on k_RAND_MAX. More...
 

Detailed Description

Random Number generator 'Mersenne Twister' This random number generator is described in the article by M. Matsumoto & T. Nishimura, in: ACM Transactions on Modeling and Computer Simulation, vol. 8, no. 1, 1998, pp. 3-30.

Note
Experts consider this an excellent random number generator. RESOLUTION = 32 bits

Constructor & Destructor Documentation

◆ cRandomMersenne()

GrayLib::cRandomMersenne::cRandomMersenne ( const void *  pData,
size_t  iSize 
)

◆ ~cRandomMersenne()

virtual GrayLib::cRandomMersenne::~cRandomMersenne ( )
inlinevirtual

Member Function Documentation

◆ get_RandUns()

UINT GrayLib::cRandomMersenne::get_RandUns ( )
overridevirtual

generate 32 random bits. 0 to 0xFFFFFFFF

Reimplemented from Gray::cRandomBase.

◆ InitSeed()

void GrayLib::cRandomMersenne::InitSeed ( const void *  pData,
size_t  iSize 
)
overridevirtual

re-seed generator

Implements Gray::cRandomBase.


The documentation for this class was generated from the following files: