28 lines
538 B
C++
28 lines
538 B
C++
#ifndef RANDOM_NUMBER_GENERATOR_H
|
|
#define RANDOM_NUMBER_GENERATOR_H
|
|
|
|
class RandomNumberGenerator
|
|
{
|
|
public:
|
|
RandomNumberGenerator(unsigned int seed);
|
|
|
|
void setSeed(unsigned int seed);
|
|
void reset();
|
|
|
|
int getInt(int min, int max);
|
|
unsigned int getUnsignedInt(unsigned int min, unsigned int max);
|
|
float getFloat(float min = 0.0f, float max = 1.0f);
|
|
bool getBool();
|
|
|
|
private:
|
|
int getNext();
|
|
unsigned int m_seed;
|
|
|
|
unsigned int m_value;
|
|
unsigned int m_a;
|
|
unsigned int m_b;
|
|
unsigned int m_m;
|
|
};
|
|
|
|
#endif // RANDOM_NUMBER_GENERATOR_H
|