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

#include <WELL.hpp>

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

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 ( )

Retrieves the next pseudo-random number (unbounded).

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

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

Seeds the PRNG with the specified seed value.


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

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