gKit2 light
Classes | Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
Philox Struct Reference

Classes

struct  array1x64
 
struct  array2x64
 

Public Types

typedef unsigned result_type
 

Public Member Functions

 Philox (const uint64_t s)
 
 Philox (const unsigned hi, const unsigned lo=0x40ba6a95)
 
void seed (const unsigned hi, const unsigned lo=0x40ba6a95)
 
void seed64 (const uint64_t s)
 
Philoxindex (const uint64_t i)
 
unsigned sample ()
 
unsigned sample_range (const unsigned range)
 
unsigned operator() ()
 

Static Public Member Functions

static constexpr unsigned min ()
 
static constexpr unsigned max ()
 

Protected Member Functions

array1x64 bumpkey (array1x64 key)
 
uint64_t mulhilo64 (uint64_t a, uint64_t b, uint64_t *hip)
 
array2x64 round (array2x64 ctr, array1x64 key)
 
template<int R>
array2x64 philox2x64 (array2x64 ctr, array1x64 key)
 

Protected Attributes

array2x64 ctr
 
array1x64 key
 

Detailed Description

Definition at line 12 of file rand123.h.


Class Documentation

◆ Philox::array1x64

struct Philox::array1x64

Definition at line 61 of file rand123.h.

Class Members
uint64_t v[1]

◆ Philox::array2x64

struct Philox::array2x64

Definition at line 60 of file rand123.h.

Class Members
uint64_t v[2]

The documentation for this struct was generated from the following file: