Main Page | Class Hierarchy | Class List | Directories | File List | Class Members | Related Pages

grinliz::Random Class Reference

Random number generators (including the rand() in C) are often frustratingly non-random in their lower bits. More...

#include <glrandom.h>

List of all members.

Public Member Functions

 Random (U32 _seed=0)
 Constructor, with optional seed value.
void SetSeed (U32 _seed)
 The current seed can be set at any time.
U16 Rand ()
 Returns a 16bit random number.
U16 Rand (U16 upperBound)
 Returns a random number greater than or equal to 0, and less that 'upperBound'.
U16 RandD2 (U16 upperBound)
 "Roll two dice.
U16 RandD3 (U16 upperBound)
 "Roll three dice.
double DRand (double upper)
 Return a random number from 0 to upper: [0,upper].
float FRand (float upper)
 Return a random number from 0 to upper: [0,upper].
bool Boolean ()
 Return a random boolean.


Detailed Description

Random number generators (including the rand() in C) are often frustratingly non-random in their lower bits.

This is a fast random number that is random in its lower bits.


Member Function Documentation

U16 grinliz::Random::RandD2 U16  upperBound  )  [inline]
 

"Roll two dice.

" Return a result from [0,upperBound). This has the same bell curve distribution as 2 dice.

U16 grinliz::Random::RandD3 U16  upperBound  )  [inline]
 

"Roll three dice.

" Return a result from [0,upperBound). This has the same bell curve distribution as 3 dice.

void grinliz::Random::SetSeed U32  _seed  ) 
 

The current seed can be set at any time.

This does put the random number generator in a consistent state, even though the random numbers are actually partially cached.


The documentation for this class was generated from the following file:
Generated on Sun Sep 25 16:25:51 2005 for Kyra by  doxygen 1.4.3