vSMC
vSMC: Scalable Monte Carlo
|
RNG generator using AES-NI instructions. More...
#include <vsmc/rng/aes_ni.hpp>
Public Types | |
using | ctr_type = std::array< ResultType, M128I< ResultType >::size()> |
using | key_type = typename KeySeqType::key_type |
using | result_type = ResultType |
Public Member Functions | |
AESNIGenerator () | |
void | operator() (ctr_type &ctr, const key_type &key, std::array< result_type, Blocks *M128I< ResultType >::size()> &buffer) |
std::size_t | operator() (ctr_type &ctr, const key_type &key, std::size_t n, result_type *r) const |
void | reset (const key_type &key) |
Static Public Member Functions | |
static constexpr std::size_t | size () |
RNG generator using AES-NI instructions.
Definition at line 58 of file aes_ni.hpp.
using vsmc::AESNIGenerator< ResultType, KeySeqType, Rounds, Blocks >::ctr_type = std::array<ResultType, M128I<ResultType>::size()> |
Definition at line 62 of file aes_ni.hpp.
using vsmc::AESNIGenerator< ResultType, KeySeqType, Rounds, Blocks >::key_type = typename KeySeqType::key_type |
Definition at line 63 of file aes_ni.hpp.
using vsmc::AESNIGenerator< ResultType, KeySeqType, Rounds, Blocks >::result_type = ResultType |
Definition at line 61 of file aes_ni.hpp.
|
inline |
Definition at line 65 of file aes_ni.hpp.
|
inline |
Definition at line 74 of file aes_ni.hpp.
|
inline |
Definition at line 93 of file aes_ni.hpp.
|
inline |
Definition at line 72 of file aes_ni.hpp.
|
inlinestatic |
Definition at line 67 of file aes_ni.hpp.