31 #ifndef SRANDOMNUMBERGENERATOR_HH
32 #define SRANDOMNUMBERGENERATOR_HH 1
76 int Initialize(
int a_nbThreads,
int a_nbExtra);
89 int Initialize(int64_t a_seed,
int a_nbThreads,
int a_nbExtra);
This header file is mainly used to declare some macro definitions and all includes needed from the st...
static sRandomNumberGenerator * GetInstance()
Instanciate the singleton object and Initialize member variables if not already done, return a pointer to this object otherwise.
Engine & GetExtraGenerator(int a_nb=0)
Get the not thread safe additional random generator, for use various sequential parts of an otherwise...
HPFLTNB GenerateExtraRdmNber(int a_nb=0)
Generate a random number using the specified additional not thread safe random generator, for use in sequential parts of an otherwise multithreaded code.
void SetVerbose(int a_verboseLevel)
Set verbosity level.
void operator=(sRandomNumberGenerator const &)
int Initialize(int a_nbThreads, int a_nbExtra)
Instantiate pseudo random number generators, one per thread by default, and additional extra ones if ...
Distribution mp_Distribution
sRandomNumberGenerator()
Constructor of sRandomNumberGenerator. Do nothing by default as it is a singleton clasee...
HPFLTNB GenerateRdmNber()
Generate a random number for the thread which index is recovered from the OpenMP function.
Singleton class that generate a thread-safe random generator number for openMP As singleton...
uniform_real_distribution< HPFLTNB > Distribution
Declaration of class sOutputManager.
vector< Engine > mp_Engines
vector< Engine > mp_extraEngines
static sRandomNumberGenerator * mp_Instance
~sRandomNumberGenerator()
Destructor of sRandomNumberGenerator. Do nothing by default.