Main Page   Modules   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

RandomNumberGeneratorInterface Class Reference

Abstract interface for random number generators. More...

#include <Random.h>

Inheritance diagram for RandomNumberGeneratorInterface:

RandomInterface RandomNumberGenerator< RNG > List of all members.

Public Types

typedef Ref< _State > State
typedef unsigned long int SeedType

Public Methods

virtual double unit ()=0
 Get a random number in the range [0,1).

virtual double uniform (double lower, double upper)=0
 Get a random number in the range [lower,upper).

virtual long uniformInt (long lower, long upper)=0
 Get a random integer in the range [lower,upper).

virtual long uniformInt (long upper)=0
 Equivalent to uniformInt(0, upper).

virtual unsigned long uniformUInt (unsigned long lower, unsigned long upper)=0
 Get a random (unsigned) integer in the range [lower,upper).

virtual unsigned long uniformUInt (unsigned long upper)=0
 Equivalent to uniformUInt(0, upper).

virtual void setSeed (SeedType seed)=0
 Set the generator seed.

virtual State getState () const=0
 Get the generator state.

virtual void setState (State const &state)=0
 Set the generator state.

virtual std::string getName () const=0
 Get the name of the generator.


Detailed Description

Abstract interface for random number generators.


Member Typedef Documentation

typedef unsigned long int RandomInterface::SeedType [inherited]
 

typedef Ref<_State> RandomInterface::State [inherited]
 


Member Function Documentation

virtual std::string RandomInterface::getName   [pure virtual, inherited]
 

Get the name of the generator.

Implemented in RandomNumberGenerator< RNG >, RandomDistribution< RD >, and RandomNumberGenerator< rng::Taus2 >.

virtual State RandomInterface::getState   [pure virtual, inherited]
 

Get the generator state.

Implemented in RandomNumberGenerator< RNG >, RandomDistribution< RD >, and RandomNumberGenerator< rng::Taus2 >.

virtual void RandomInterface::setSeed SeedType    seed [pure virtual, inherited]
 

Set the generator seed.

Implemented in RandomNumberGenerator< rng::Taus2 >.

virtual void RandomInterface::setState State const &    state [pure virtual, inherited]
 

Set the generator state.

Implemented in RandomNumberGenerator< rng::Taus2 >.

virtual double RandomNumberGeneratorInterface::uniform double    lower,
double    upper
[pure virtual]
 

Get a random number in the range [lower,upper).

Implemented in RandomNumberGenerator< RNG >, and RandomNumberGenerator< rng::Taus2 >.

virtual long RandomNumberGeneratorInterface::uniformInt long    upper [pure virtual]
 

Equivalent to uniformInt(0, upper).

Implemented in RandomNumberGenerator< RNG >, and RandomNumberGenerator< rng::Taus2 >.

virtual long RandomNumberGeneratorInterface::uniformInt long    lower,
long    upper
[pure virtual]
 

Get a random integer in the range [lower,upper).

Implemented in RandomNumberGenerator< RNG >, and RandomNumberGenerator< rng::Taus2 >.

virtual unsigned long RandomNumberGeneratorInterface::uniformUInt unsigned long    upper [pure virtual]
 

Equivalent to uniformUInt(0, upper).

Implemented in RandomNumberGenerator< RNG >, and RandomNumberGenerator< rng::Taus2 >.

virtual unsigned long RandomNumberGeneratorInterface::uniformUInt unsigned long    lower,
unsigned long    upper
[pure virtual]
 

Get a random (unsigned) integer in the range [lower,upper).

Implemented in RandomNumberGenerator< RNG >, and RandomNumberGenerator< rng::Taus2 >.

virtual double RandomNumberGeneratorInterface::unit   [pure virtual]
 

Get a random number in the range [0,1).

Implemented in RandomNumberGenerator< RNG >, and RandomNumberGenerator< rng::Taus2 >.


The documentation for this class was generated from the following file:
SimData version pre-0.4.0. For more information on SimData, visit the SimData Homepage.

Generated on Tue Oct 14 12:06:42 2003, using Doxygen 1.2.18.

[SF.net]