diff options
Diffstat (limited to 'src/randomization.cpp')
-rw-r--r-- | src/randomization.cpp | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/randomization.cpp b/src/randomization.cpp new file mode 100644 index 0000000..8f233d2 --- /dev/null +++ b/src/randomization.cpp @@ -0,0 +1,21 @@ +#include "randomization.hpp" + +RandomNumberGenerator::RandomNumberGenerator(const unsigned int &seed) +{ + this->_generator = std::make_unique<std::mt19937>(seed); +} + +RandomNumberGenerator::RandomNumberGenerator() +{ + std::random_device random_device; + + this->_generator = std::make_unique<std::mt19937>(random_device()); +} + +unsigned int RandomNumberGenerator::in_range(const unsigned int &a, + const unsigned int &b) const +{ + auto random_distribution = std::uniform_int_distribution<unsigned int>(a, b); + + return random_distribution(*this->_generator); +} |