vSMC
vSMC: Scalable Monte Carlo
Public Types | Public Member Functions | Static Public Member Functions | List of all members
vsmc::ThreefryGenerator< ResultType, K, Rounds > Class Template Reference

Threefry RNG generator. More...

#include <vsmc/rng/threefry.hpp>

Public Types

using ctr_type = std::array< ResultType, K >
 
using key_type = std::array< ResultType, K >
 
using result_type = ResultType
 

Public Member Functions

void operator() (ctr_type &ctr, const key_type &key, ctr_type &buffer) const
 
void operator() (ctr_type &ctr, const key_type &key, std::size_t n, ctr_type *buffer) const
 
void reset (const key_type &)
 

Static Public Member Functions

static constexpr std::size_t size ()
 

Detailed Description

template<typename ResultType, std::size_t K = 4, std::size_t Rounds = 20>
class vsmc::ThreefryGenerator< ResultType, K, Rounds >

Threefry RNG generator.

Definition at line 306 of file threefry.hpp.

Member Typedef Documentation

template<typename ResultType , std::size_t K = 4, std::size_t Rounds = 20>
using vsmc::ThreefryGenerator< ResultType, K, Rounds >::ctr_type = std::array<ResultType, K>

Definition at line 322 of file threefry.hpp.

template<typename ResultType , std::size_t K = 4, std::size_t Rounds = 20>
using vsmc::ThreefryGenerator< ResultType, K, Rounds >::key_type = std::array<ResultType, K>

Definition at line 323 of file threefry.hpp.

template<typename ResultType , std::size_t K = 4, std::size_t Rounds = 20>
using vsmc::ThreefryGenerator< ResultType, K, Rounds >::result_type = ResultType

Definition at line 321 of file threefry.hpp.

Member Function Documentation

template<typename ResultType , std::size_t K = 4, std::size_t Rounds = 20>
void vsmc::ThreefryGenerator< ResultType, K, Rounds >::operator() ( ctr_type ctr,
const key_type key,
ctr_type buffer 
) const
inline

Definition at line 329 of file threefry.hpp.

template<typename ResultType , std::size_t K = 4, std::size_t Rounds = 20>
void vsmc::ThreefryGenerator< ResultType, K, Rounds >::operator() ( ctr_type ctr,
const key_type key,
std::size_t  n,
ctr_type buffer 
) const
inline

Definition at line 338 of file threefry.hpp.

template<typename ResultType , std::size_t K = 4, std::size_t Rounds = 20>
void vsmc::ThreefryGenerator< ResultType, K, Rounds >::reset ( const key_type )
inline

Definition at line 327 of file threefry.hpp.

template<typename ResultType , std::size_t K = 4, std::size_t Rounds = 20>
static constexpr std::size_t vsmc::ThreefryGenerator< ResultType, K, Rounds >::size ( )
inlinestatic

Definition at line 325 of file threefry.hpp.