Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
ROOT::Math::RanluxppCompatEngineGslRanlxd< p > Class Template Referencefinal

template<int p>
class ROOT::Math::RanluxppCompatEngineGslRanlxd< p >

Compatibility engine for gsl_rng_ranlxd* from the GNU Scientific Library.

Definition at line 137 of file RanluxppEngine.h.

Public Member Functions

 RanluxppCompatEngineGslRanlxd (uint64_t seed=1)
 
 ~RanluxppCompatEngineGslRanlxd () override
 
uint64_t IntRndm ()
 Generate a random integer value with 48 bits.
 
double operator() ()
 Generate a floating point random number (non-virtual method)
 
double Rndm () override
 Generate a floating point random number with 48 bits of randomness.
 
void SetSeed (uint64_t seed)
 Initialize and seed the state of the generator.
 
void Skip (uint64_t n)
 Skip n random numbers without generating them.
 
- Public Member Functions inherited from ROOT::Math::TRandomEngine
virtual ~TRandomEngine ()
 

Static Public Member Functions

static const char * Name ()
 Get name of the generator.
 

Private Types

using ImplType = RanluxppEngineImpl< 48, p >
 

Private Attributes

std::unique_ptr< ImplTypefImpl
 

#include <Math/RanluxppEngine.h>

Inheritance diagram for ROOT::Math::RanluxppCompatEngineGslRanlxd< p >:
[legend]

Member Typedef Documentation

◆ ImplType

template<int p>
using ROOT::Math::RanluxppCompatEngineGslRanlxd< p >::ImplType = RanluxppEngineImpl<48, p>
private

Definition at line 140 of file RanluxppEngine.h.

Constructor & Destructor Documentation

◆ RanluxppCompatEngineGslRanlxd()

template<int p>
ROOT::Math::RanluxppCompatEngineGslRanlxd< p >::RanluxppCompatEngineGslRanlxd ( uint64_t  seed = 1)

Definition at line 532 of file RanluxppEngineImpl.cxx.

◆ ~RanluxppCompatEngineGslRanlxd()

Member Function Documentation

◆ IntRndm()

template<int p>
uint64_t ROOT::Math::RanluxppCompatEngineGslRanlxd< p >::IntRndm

Generate a random integer value with 48 bits.

Definition at line 553 of file RanluxppEngineImpl.cxx.

◆ Name()

template<int p>
static const char * ROOT::Math::RanluxppCompatEngineGslRanlxd< p >::Name ( )
inlinestatic

Get name of the generator.

Definition at line 160 of file RanluxppEngine.h.

◆ operator()()

Generate a floating point random number (non-virtual method)

Definition at line 547 of file RanluxppEngineImpl.cxx.

◆ Rndm()

template<int p>
double ROOT::Math::RanluxppCompatEngineGslRanlxd< p >::Rndm
overridevirtual

Generate a floating point random number with 48 bits of randomness.

Implements ROOT::Math::TRandomEngine.

Definition at line 541 of file RanluxppEngineImpl.cxx.

◆ SetSeed()

template<int p>
void ROOT::Math::RanluxppCompatEngineGslRanlxd< p >::SetSeed ( uint64_t  seed)

Initialize and seed the state of the generator.

Definition at line 559 of file RanluxppEngineImpl.cxx.

◆ Skip()

template<int p>
void ROOT::Math::RanluxppCompatEngineGslRanlxd< p >::Skip ( uint64_t  n)

Skip n random numbers without generating them.

Definition at line 565 of file RanluxppEngineImpl.cxx.

Member Data Documentation

◆ fImpl

template<int p>
std::unique_ptr<ImplType> ROOT::Math::RanluxppCompatEngineGslRanlxd< p >::fImpl
private

Definition at line 141 of file RanluxppEngine.h.

  • math/mathcore/inc/Math/RanluxppEngine.h
  • math/mathcore/src/RanluxppEngineImpl.cxx