Template Class PhiloxNative
Defined in File philox_simd.hpp
Class Documentation
-
template<std::uint8_t N = 4, std::uint8_t W = 32, std::uint8_t R = 10>
class PhiloxNative Public Types
-
using result_type = std::uint64_t
-
using word_type = std::conditional_t<W == 32, std::uint32_t, std::uint64_t>
Public Functions
-
inline explicit PhiloxNative(result_type seed, result_type counter = 0) noexcept
-
inline PhiloxNative(key_type key, counter_type counter) noexcept
-
inline result_type operator()() noexcept
-
inline double uniform() noexcept
-
inline counter_type getCounter() const noexcept
-
inline key_type getKey() const noexcept
-
inline counter_type getCounterForSerde() const noexcept
-
inline void setState(const counter_type &ctr, const key_type &key) noexcept
-
inline std::uint8_t cache_index() const noexcept
-
inline void set_cache_index(std::uint8_t idx) noexcept
-
inline const std::array<result_type, CACHE_SIZE> &cache() const noexcept
-
inline std::array<result_type, CACHE_SIZE> &cache() noexcept
-
inline std::size_t getSIMDSize() const noexcept
Public Static Functions
- static inline constexpr auto() min () noexcept
- static inline constexpr auto() max () noexcept
Public Static Attributes
-
static constexpr std::uint16_t CACHE_SIZE = 256
-
using result_type = std::uint64_t