LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
rndm::details::RandomPolicy< SEED >::RandomImpl Class Reference

Public Member Functions

 RandomImpl (seed_t master_seed, seed_t min_seed, seed_t max_seed)
 
seed_t master_seed () const
 
seed_t min () const
 
seed_t max () const
 
seed_t operator() ()
 
 RandomImpl (seed_t master_seed, seed_t min_seed, seed_t max_seed)
 
seed_t master_seed () const
 
seed_t min () const
 
seed_t max () const
 
seed_t operator() ()
 

Private Attributes

seed_t seed
 seed given at construction, for the record More...
 
std::default_random_engine generator
 random engine More...
 
std::uniform_int_distribution< seed_tdistribution
 flat More...
 

Detailed Description

template<typename SEED>
class rndm::details::RandomPolicy< SEED >::RandomImpl

Definition at line 808 of file BasePolicies.h.

Constructor & Destructor Documentation

template<typename SEED >
rndm::details::RandomPolicy< SEED >::RandomImpl::RandomImpl ( seed_t  master_seed,
seed_t  min_seed,
seed_t  max_seed 
)
inline

Definition at line 810 of file BasePolicies.h.

Referenced by rndm::details::RandomPolicy< SEED >::createSeed().

810  :
811  seed(master_seed),
812  generator(master_seed), distribution(min_seed, max_seed)
813  {}
seed_t seed
seed given at construction, for the record
Definition: BasePolicies.h:821
std::uniform_int_distribution< seed_t > distribution
flat
Definition: BasePolicies.h:823
std::default_random_engine generator
random engine
Definition: BasePolicies.h:822
template<typename SEED >
rndm::details::RandomPolicy< SEED >::RandomImpl::RandomImpl ( seed_t  master_seed,
seed_t  min_seed,
seed_t  max_seed 
)
inline

Definition at line 72 of file RandomPolicy.h.

72  :
74  generator(master_seed), distribution(min_seed, max_seed)
75  {}
seed_t seed
seed given at construction, for the record
Definition: BasePolicies.h:821
std::uniform_int_distribution< seed_t > distribution
flat
Definition: BasePolicies.h:823
std::default_random_engine generator
random engine
Definition: BasePolicies.h:822

Member Function Documentation

template<typename SEED >
seed_t rndm::details::RandomPolicy< SEED >::RandomImpl::master_seed ( ) const
inline

Definition at line 77 of file RandomPolicy.h.

References rndm::details::RandomPolicy< SEED >::RandomImpl::seed.

77 { return seed; }
seed_t seed
seed given at construction, for the record
Definition: BasePolicies.h:821
template<typename SEED >
seed_t rndm::details::RandomPolicy< SEED >::RandomImpl::master_seed ( ) const
inline

Definition at line 815 of file BasePolicies.h.

References seed.

Referenced by rndm::details::RandomPolicy< SEED >::createSeed().

815 { return seed; }
seed_t seed
seed given at construction, for the record
Definition: BasePolicies.h:821
template<typename SEED >
seed_t rndm::details::RandomPolicy< SEED >::RandomImpl::max ( void  ) const
inline

Definition at line 79 of file RandomPolicy.h.

References rndm::details::RandomPolicy< SEED >::RandomImpl::distribution.

79 { return distribution.max(); }
std::uniform_int_distribution< seed_t > distribution
flat
Definition: BasePolicies.h:823
template<typename SEED >
seed_t rndm::details::RandomPolicy< SEED >::RandomImpl::max ( void  ) const
inline

Definition at line 817 of file BasePolicies.h.

817 { return distribution.max(); }
std::uniform_int_distribution< seed_t > distribution
flat
Definition: BasePolicies.h:823
template<typename SEED >
seed_t rndm::details::RandomPolicy< SEED >::RandomImpl::min ( void  ) const
inline

Definition at line 78 of file RandomPolicy.h.

References rndm::details::RandomPolicy< SEED >::RandomImpl::distribution.

78 { return distribution.min(); }
std::uniform_int_distribution< seed_t > distribution
flat
Definition: BasePolicies.h:823
template<typename SEED >
seed_t rndm::details::RandomPolicy< SEED >::RandomImpl::min ( void  ) const
inline

Definition at line 816 of file BasePolicies.h.

816 { return distribution.min(); }
std::uniform_int_distribution< seed_t > distribution
flat
Definition: BasePolicies.h:823
template<typename SEED >
seed_t rndm::details::RandomPolicy< SEED >::RandomImpl::operator() ( )
inline

Definition at line 818 of file BasePolicies.h.

818 { return distribution(generator); }
std::uniform_int_distribution< seed_t > distribution
flat
Definition: BasePolicies.h:823
std::default_random_engine generator
random engine
Definition: BasePolicies.h:822

Member Data Documentation

template<typename SEED >
std::uniform_int_distribution< seed_t > rndm::details::RandomPolicy< SEED >::RandomImpl::distribution
private
template<typename SEED >
std::default_random_engine rndm::details::RandomPolicy< SEED >::RandomImpl::generator
private

random engine

Definition at line 822 of file BasePolicies.h.

Referenced by rndm::details::RandomPolicy< SEED >::RandomImpl::operator()().

template<typename SEED >
seed_t rndm::details::RandomPolicy< SEED >::RandomImpl::seed
private

seed given at construction, for the record

Definition at line 821 of file BasePolicies.h.

Referenced by rndm::details::RandomPolicy< SEED >::RandomImpl::master_seed(), and rndm::details::RandomPolicy< SEED >::RandomImpl::operator()().


The documentation for this class was generated from the following files: