15 #ifndef MT_RNG_HPP_INCLUDED
16 #define MT_RNG_HPP_INCLUDED
18 #include <boost/cstdint.hpp>
19 #include <boost/random/mersenne_twister.hpp>
80 void discard(
const unsigned int call_count);
void rotate_random()
Resets the random to the 0 calls and the seed to the random this way we stay in the same sequence but...
uint32_t random_seed_
Initial seed for the pool.
uint32_t get_next_random()
Get a new random number.
void discard(const unsigned int call_count)
On my local version of boost::random, I can use mt_.discard to discard a number of rng results...
void seed_random(const std::string &seed, const unsigned int call_count=0)
Same as uint32_t version, but uses a stringstream to convert given hex string.
std::string get_random_seed_str() const
unsigned int get_random_calls() const
bool operator==(const mt_rng &other) const
bool operator!=(const mt_rng &other) const
uint32_t get_random_seed() const
unsigned int random_calls_
Number of time a random number is generated.
A config object defines a single node in a WML file, with access to child nodes.
GLsizei const GLcharARB ** string
boost::mt19937 mt_
State for the random pool (boost mersenne twister random generator).