Files
dota_factory/src/lib/utility/random/RandomNumberGenerator.h

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