class for wrapping ROOT Engines in gsl_rng types which can be used as extra GSL random number generators For this we need to implement functions which will be called by gsl_rng.
The functions (Seed, Rndm, IntRndm) are passed in the gsl_rng_type and used to build a gsl_rng object. When gsl_rng is alloacated, only the memory state is allocated using calloc(1,size), which gives a memory block of the given bytes and it initializes to zero. Therefore no constructor of GSLRngROOTWrapper can be called and also we cannot call non-static member function of the class. The underlined ROOT engine is then built and deleted using the functions CreateEngine() and FreeEngine(), called by the specific GSLRandomEngine class that instantiates for the the generator (e.g. GSLRngMixMax)
Definition at line 39 of file GSLRngROOTWrapper.h.
Static Public Member Functions | |
static void | CreateEngine (gsl_rng *r) |
static void | FreeEngine (gsl_rng *r) |
static unsigned long | IntRndm (void *p) |
static unsigned long | Max () |
static unsigned long | Min () |
static std::string | Name () |
static double | Rndm (void *p) |
static void | Seed (void *p, unsigned long seed) |
static size_t | Size () |
Public Attributes | |
Engine * | fEngine = nullptr |
|
inlinestatic |
Definition at line 46 of file GSLRngROOTWrapper.h.
|
inlinestatic |
Definition at line 71 of file GSLRngROOTWrapper.h.
|
inlinestatic |
Definition at line 57 of file GSLRngROOTWrapper.h.
|
inlinestatic |
Definition at line 79 of file GSLRngROOTWrapper.h.
|
inlinestatic |
Definition at line 80 of file GSLRngROOTWrapper.h.
|
inlinestatic |
Definition at line 82 of file GSLRngROOTWrapper.h.
|
inlinestatic |
Definition at line 56 of file GSLRngROOTWrapper.h.
|
inlinestatic |
Definition at line 59 of file GSLRngROOTWrapper.h.
|
inlinestatic |
Definition at line 81 of file GSLRngROOTWrapper.h.
Engine* ROOT::Math::GSLRngROOTWrapper< Engine >::fEngine = nullptr |
Definition at line 41 of file GSLRngROOTWrapper.h.