STE-Industries: utilities testing
|
#include "SimpleRandomGenerator.h"
Public Member Functions | |
SimpleRandomGenerator (const SimpleRandomGenerator &Argument) noexcept=default | |
SimpleRandomGenerator (SimpleRandomGenerator &&Argument) noexcept=default | |
SimpleRandomGenerator (uint_fast32_t thisMultiplier, uint_fast32_t thisConstant, uint_fast32_t thisModule) noexcept | |
SimpleRandomGenerator (void) noexcept | |
~SimpleRandomGenerator (void) noexcept=default | |
uint_fast32_t | Generate (uint_fast32_t Maximum) noexcept |
uint_fast32_t | GetValue (void) const noexcept |
SimpleRandomGenerator & | operator= (const SimpleRandomGenerator &Argument) noexcept=default |
SimpleRandomGenerator & | operator= (SimpleRandomGenerator &&Argument) noexcept=default |
void | SetSeed (uint_fast32_t thisConstant) noexcept |
Private Member Functions | |
uint_fast32_t | Generate (void) noexcept |
Private Attributes | |
uint_fast32_t | Constant |
uint_fast32_t | Module |
uint_fast32_t | Multiplier |
uint_fast32_t | Value |
Static Private Attributes | |
static constexpr uint_fast32_t | DEFAULT_CONSTANT = 0 |
static constexpr uint_fast32_t | DEFAULT_MODULE = 0 |
static constexpr uint_fast32_t | DEFAULT_MULTIPLIER = 0 |
static constexpr uint_fast32_t | DEFAULT_SEED = 0 |
The SimpleRandomGenerator class represents a linear congruent random numbers generator.
Proper choice of the parameter ensures that the cycle of generated numbers repeats itself only after Module generations.
See Erwin Donald Knuth, The art of Computer Programming, vol II.
Definition at line 31 of file SimpleRandomGenerator.h.
|
inlinenoexcept |
None. |
Definition at line 54 of file SimpleRandomGenerator.inl.
|
defaultnoexcept |
|
defaultnoexcept |
|
inlinenoexcept |
thisMultiplier | Multiplier. |
thisConstant | Constant. |
thisModule | Module. |
None. |
Definition at line 80 of file SimpleRandomGenerator.inl.
|
defaultnoexcept |
|
inlinenoexcept |
Maximum | The maximum number that can be generated; if it is zero, zero is generated; |
None. |
Definition at line 148 of file SimpleRandomGenerator.inl.
|
inlineprivatenoexcept |
None. |
Definition at line 32 of file SimpleRandomGenerator.inl.
|
inlinenoexcept |
None. |
Definition at line 115 of file SimpleRandomGenerator.inl.
Referenced by GraphicSpace::RandomGenerator::GetSeed().
|
defaultnoexcept |
|
defaultnoexcept |
|
inlinenoexcept |
Seed | Initial value. |
None. |
Definition at line 100 of file SimpleRandomGenerator.inl.
Referenced by GraphicSpace::RandomGenerator::SetSeed().
|
private |
Additive constant used by the random number generator.
Definition at line 45 of file SimpleRandomGenerator.h.
|
staticconstexprprivate |
Default constant value.
Definition at line 61 of file SimpleRandomGenerator.h.
|
staticconstexprprivate |
Default module value.
Definition at line 65 of file SimpleRandomGenerator.h.
|
staticconstexprprivate |
Default multiplier value.
Definition at line 57 of file SimpleRandomGenerator.h.
|
staticconstexprprivate |
Default seed value.
Definition at line 69 of file SimpleRandomGenerator.h.
|
private |
Module used by the random number generator.
Definition at line 49 of file SimpleRandomGenerator.h.
|
private |
Multiplier used by the random number generator.
Definition at line 41 of file SimpleRandomGenerator.h.
|
private |
Latest generated value.
Definition at line 53 of file SimpleRandomGenerator.h.