class Gambit::Utils::threadsafe_rng

[No description available] More…

#include <threadsafe_rng.hpp>

Inherited by Gambit::Utils::specialised_threadsafe_rng< Engine >

Public Types

Name
typedef std::uint64_tresult_type
Return type (will convert underlying RNG type to this)

Public Functions

Name
virtual~threadsafe_rng() =0
Pure virtual destructor to force overriding in derived class.
virtual result_typeoperator()() =0
Operator used for getting random deviates.
constexpr result_typemin()
Operators for compliance with RandomNumberEngine interface -> random distribution sampling.
constexpr result_typemax()

Detailed Description

class Gambit::Utils::threadsafe_rng;

Base class for thread-safe random number generators. Must conform to the requirements of UniformRandomBitGenerator, see e.g. https://en.cppreference.com/w/cpp/named_req/UniformRandomBitGenerator Importantly, operator() must return UNSIGNED INTEGERS!

Public Types Documentation

typedef result_type

typedef std::uint64_t Gambit::Utils::threadsafe_rng::result_type;

Return type (will convert underlying RNG type to this)

Public Functions Documentation

function ~threadsafe_rng

inline virtual ~threadsafe_rng() =0

Pure virtual destructor to force overriding in derived class.

Give an inline implementation of the destructor, to prevent link errors but keep base class pure virtual.

function operator()

virtual result_type operator()() =0

Operator used for getting random deviates.

Reimplemented by: Gambit::Utils::specialised_threadsafe_rng::operator()

function min

static inline constexpr result_type min()

Operators for compliance with RandomNumberEngine interface -> random distribution sampling.

function max

static inline constexpr result_type max()

Updated on 2024-07-18 at 13:53:32 +0000