Template Class Philox
Defined in File philox.hpp
Class Documentation
-
template<std::uint8_t N = 4, std::uint8_t W = 32, std::uint8_t R = 10>
class Philox Public Types
-
using result_type = std::uint64_t
-
using word_type = std::conditional_t<W == 32, std::uint32_t, std::uint64_t>
-
using result_block_type = std::array<result_type, RESULTS_PER_BLOCK>
Public Functions
-
inline explicit Philox(result_type seed, result_type counter = 0) noexcept
-
inline explicit Philox(key_type key, counter_type counter) noexcept
-
inline constexpr result_type operator()() noexcept
-
inline constexpr double uniform() noexcept
-
inline counter_type getCounter() const noexcept
-
inline key_type getKey() const noexcept
-
inline void setCounter(const counter_type &ctr) noexcept
-
inline void setKey(const key_type &key) noexcept
-
inline counter_type getCounterForSerde() const noexcept
-
inline void setState(const counter_type &ctr, const key_type &key) noexcept
-
inline const result_block_type &result_cache() const noexcept
-
inline void set_result_cache(const result_block_type &cache) noexcept
-
inline std::uint8_t result_index() const noexcept
-
inline void set_result_index(std::uint8_t idx) noexcept
Public Static Functions
- static inline constexpr auto() min () noexcept
- static inline constexpr auto() max () noexcept
-
static inline constexpr key_type seed_to_key(result_type seed) noexcept
-
static inline constexpr counter_type counter_from_uint64(result_type counter) noexcept
-
using result_type = std::uint64_t