34 #ifndef DOXYGEN_SHOULD_SKIP_THIS 84 std::uniform_int_distribution<T> dist(min, max);
85 return dist(m_engine);
97 std::uniform_real_distribution<T> dist(min, max);
98 return dist(m_engine);
110 std::normal_distribution<T> dist(mean, stddev);
111 return dist(m_engine);
121 std::bernoulli_distribution dist(p);
122 return dist(m_engine);
156 float computeRadius(
float radiusMin,
float radiusMax);
163 float computeAngle();
182 std::mt19937 m_engine;
185 #ifndef DOXYGEN_SHOULD_SKIP_THIS 190 #endif // GF_RANDOM_H A random engine.
Definition: Random.h:47
T computeNormalFloat(T mean, T stddev)
Compute a float with a normal (Gaussian) distribution.
Definition: Random.h:109
T computeUniformFloat(T min, T max)
Compute a float with a uniform distribution.
Definition: Random.h:96
Random(std::uint_fast32_t seed)
Constructor with simple initialization.
Definition: Random.h:69
Utility class for manipulating circles.
Definition: Circ.h:61
The namespace for gf classes.
Definition: Action.h:35
bool computeBernoulli(double p)
Compute a boolean with a Bernoulli distribution.
Definition: Random.h:120
uint64_t Id
An identifier.
Definition: Id.h:37
std::mt19937 & getEngine()
Get the underlying engine.
Definition: Random.h:177
T computeUniformInteger(T min, T max)
Compute an integer with a uniform distribution.
Definition: Random.h:83
General purpose math vector.
Definition: Vector.h:61