Ocular Engine
Ocular::Math::Random::WELL512 Class Reference

#include <WELL.hpp>

Inheritance diagram for Ocular::Math::Random::WELL512:
Ocular::Math::Random::ARandom

Public Member Functions

virtual void seed (int64_t seed)
 
virtual unsigned next ()
 
- Public Member Functions inherited from Ocular::Math::Random::ARandom
uint32_t operator() ()
 
void seed ()
 
virtual uint32_t next (uint32_t min, uint32_t max)
 
virtual float nextf (float precision=0.0001f)
 
virtual float nextf (float min, float max, float precision=0.0001f)
 
virtual int32_t nextSigned ()
 
virtual int32_t nextSigned (int32_t min, int32_t max)
 
virtual uint32_t min ()
 
virtual uint32_t max ()
 

Additional Inherited Members

- Protected Attributes inherited from Ocular::Math::Random::ARandom
int64_t m_Seed
 

Detailed Description

Implementation of the 512 periodicity variation of the WELL (Well Equidistributed Long-Period Linear) PRNG using the IRandom interface.

Original implementation may be found at: http://www.iro.umontreal.ca/~panneton/well/WELL512a.c
Copyright: Francois Panneton, Pierre L'Ecuyer, and Makoto Matsumoto.

Member Function Documentation

uint32_t Ocular::Math::Random::WELL512::next ( )
virtual

Retrieves the next pseudo-random number (unbounded).

Implements Ocular::Math::Random::ARandom.

void Ocular::Math::Random::WELL512::seed ( int64_t  seed)
virtual

Seeds the PRNG with the specified seed value.

Parameters
[in]seed

Reimplemented from Ocular::Math::Random::ARandom.


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