Lumiera
0.pre.03
»edit your freedom«
|
Go to the source code of this file.
Generating (pseudo) random numbers with controlled seed.
As an extension on top of the C++ random number framework, several instances of random number sequence generators can be easily created with a controlled seed. For simplified usage, two default instances are exposed as global variable
Definition in file random.hpp.
Classes | |
class | CappedGen< GEN > |
Adapter to protect against data corruption caused by concurrent access. More... | |
class | RandomSequencer< GEN > |
Access point to a selection of random number sources. More... | |
class | RandomSequencer< GEN >::Seed |
class | SeedNucleus |
Establishes a seed point for any instance or performance. More... | |
Typedefs | |
using | Random = RandomSequencer< std::mt19937_64 > |
PRNG engine to use by default: 64bit Mersenne twister. | |
Functions | |
uint constexpr | _iBOUND () |
template<class GEN > | |
auto | buildCappedSubSequence (RandomSequencer< GEN > &src) |
void | randomiseRandomness () |
inject true randomness into the defaultGen | |
lib::HashVal | ranHash () |
int | rani (uint bound=_iBOUND()) |
double | ranNormal (double mean=0.0, double stdev=1.0) |
double | ranRange (double start, double bound) |
SeedNucleus & | seedFromDefaultGen () |
draw seed another Generator from the default RandomSequencer | |
Namespaces | |
lib | |
Implementation namespace for support and library code. | |