Template Struct PhiloxSIMDInitResult

Struct Documentation

template<std::uint8_t N, std::uint8_t W>
struct PhiloxSIMDInitResult

Public Types

using word_type = std::conditional_t<W == 32, std::uint32_t, std::uint64_t>
using counter_type = std::array<word_type, N>
using key_type = std::array<word_type, N / 2>
using result_type = std::uint64_t
using populate_fn = void (*)(void*, std::array<result_type, CACHE_SIZE>&) noexcept
using get_counter_fn = counter_type (*)(const void*, bool, std::uint16_t) noexcept
using get_raw_counter_fn = counter_type (*)(const void*) noexcept
using get_key_fn = key_type (*)(const void*) noexcept
using set_state_fn = void (*)(void*, const counter_type&, const key_type&) noexcept

Public Members

populate_fn populate_cache
get_counter_fn get_counter
get_raw_counter_fn get_raw_counter
get_key_fn get_key
set_state_fn set_state
std::size_t simd_size

Public Static Attributes

static constexpr std::uint16_t CACHE_SIZE = 256