#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