19 #include "Random123/array.h" 20 #include "Random123/philox.h" 21 #include "Random123/threefry.h" 22 #include "Random123/ars.h" 23 #include "Random123/ReinterpretCtr.hpp" 29 template <
typename Engine>
41 typedef typename random_iterator_r123::Philox2x64::ctr_type state_type;
42 typedef typename random_iterator_r123::Philox2x64::key_type seed_type;
43 typedef typename random_iterator_r123::Philox2x64::ukey_type init_type;
44 typedef uint64_t advance_type;
45 typedef state_type::value_type result_type;
52 typedef typename random_iterator_r123::Philox4x64::ctr_type state_type;
53 typedef typename random_iterator_r123::Philox4x64::key_type seed_type;
54 typedef typename random_iterator_r123::Philox4x64::ukey_type init_type;
55 typedef uint64_t advance_type;
56 typedef state_type::value_type result_type;
63 typedef typename random_iterator_r123::Threefry2x64::ctr_type state_type;
64 typedef typename random_iterator_r123::Threefry2x64::key_type seed_type;
65 typedef typename random_iterator_r123::Threefry2x64::ukey_type init_type;
66 typedef uint64_t advance_type;
67 typedef state_type::value_type result_type;
75 typedef typename random_iterator_r123::Threefry4x64::ctr_type state_type;
76 typedef typename random_iterator_r123::Threefry4x64::key_type seed_type;
77 typedef typename random_iterator_r123::Threefry4x64::ukey_type init_type;
78 typedef uint64_t advance_type;
79 typedef state_type::value_type result_type;
84 #if RANDOM_ITERATOR_R123_USE_AES_NI 87 typedef typename random_iterator_r123::ARS4x32::ctr_type state_type;
88 typedef typename random_iterator_r123::ARS4x32::key_type seed_type;
89 typedef typename random_iterator_r123::ARS4x32::ukey_type init_type;
90 typedef uint64_t advance_type;
91 typedef state_type::value_type result_type;
98 typedef typename random_iterator_r123::ARS2x64::ctr_type state_type;
99 typedef typename random_iterator_r123::ARS2x64::key_type seed_type;
100 typedef typename random_iterator_r123::ARS2x64::ukey_type init_type;
101 typedef uint64_t advance_type;
102 typedef state_type::value_type result_type;