aboutsummaryrefslogtreecommitdiff
path: root/src/randomization.cpp
blob: 8f233d2813b178b5536764a45bbd62fcf542d57f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
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);
}