From cc3869ac0b24a97dbadc6b837b3c23af28baa627 Mon Sep 17 00:00:00 2001 From: HampusM Date: Sat, 19 Feb 2022 17:30:16 +0100 Subject: feat: add basic program stuff --- src/randomization.hpp | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 src/randomization.hpp (limited to 'src/randomization.hpp') diff --git a/src/randomization.hpp b/src/randomization.hpp new file mode 100644 index 0000000..b4931d7 --- /dev/null +++ b/src/randomization.hpp @@ -0,0 +1,35 @@ +#pragma once + +#include +#include + +/** + * Pseudo-random unsigned integer generator. + */ +class RandomNumberGenerator +{ +public: + /** + * Creates a pseudo-random number generator. + * + * @param seed A number generation seed + */ + explicit RandomNumberGenerator(const unsigned int &seed); + + /** + * Creates a pesudo-random number generator. + */ + RandomNumberGenerator(); + + /** + * Generates a number in the range of a to b. + * + * @param a A number lower than b + * @param b A number greater than a + */ + [[nodiscard]] unsigned int in_range(const unsigned int &a, + const unsigned int &b) const; + +private: + std::unique_ptr _generator; +}; -- cgit v1.2.3-18-g5258