#include <fastmm/core/rng.hpp>
|
| using | result_type = std::uint64_t |
| | std::uniform_random_bit_generator interface
|
| |
|
| constexpr | Xoshiro256ss (std::uint64_t seed=0x9E3779B97F4A7C15ULL) noexcept |
| |
| constexpr void | reseed (std::uint64_t seed) noexcept |
| |
| constexpr std::uint64_t | next () noexcept |
| |
| constexpr std::uint64_t | operator() () noexcept |
| |
| constexpr std::uint64_t | uniform (std::uint64_t n) noexcept |
| | Unbiased integer in [0, n) (Lemire's multiply-shift with rejection).
|
| |
| constexpr std::int64_t | between (std::int64_t lo, std::int64_t hi) noexcept |
| | Integer in [lo, hi] inclusive.
|
| |
| double | uniform01 () noexcept |
| | Double in [0, 1). Sim/backtest only (hot path is integer).
|
| |
◆ result_type
std::uniform_random_bit_generator interface
◆ Xoshiro256ss()
| constexpr fastmm::Xoshiro256ss::Xoshiro256ss |
( |
std::uint64_t |
seed = 0x9E3779B97F4A7C15ULL | ) |
|
|
inlineexplicitconstexprnoexcept |
◆ reseed()
| constexpr void fastmm::Xoshiro256ss::reseed |
( |
std::uint64_t |
seed | ) |
|
|
inlineconstexprnoexcept |
splitmix64 expands the seed so that seed 0 does not produce the all-zero state.
◆ next()
| constexpr std::uint64_t fastmm::Xoshiro256ss::next |
( |
| ) |
|
|
inlineconstexprnoexcept |
◆ operator()()
| constexpr std::uint64_t fastmm::Xoshiro256ss::operator() |
( |
| ) |
|
|
inlineconstexprnoexcept |
◆ uniform()
| constexpr std::uint64_t fastmm::Xoshiro256ss::uniform |
( |
std::uint64_t |
n | ) |
|
|
inlineconstexprnoexcept |
Unbiased integer in [0, n) (Lemire's multiply-shift with rejection).
◆ between()
| constexpr std::int64_t fastmm::Xoshiro256ss::between |
( |
std::int64_t |
lo, |
|
|
std::int64_t |
hi |
|
) |
| |
|
inlineconstexprnoexcept |
Integer in [lo, hi] inclusive.
◆ uniform01()
| double fastmm::Xoshiro256ss::uniform01 |
( |
| ) |
|
|
inlinenoexcept |
Double in [0, 1). Sim/backtest only (hot path is integer).
◆ min()
| static constexpr result_type fastmm::Xoshiro256ss::min |
( |
| ) |
|
|
inlinestaticconstexprnoexcept |
◆ max()
| static constexpr result_type fastmm::Xoshiro256ss::max |
( |
| ) |
|
|
inlinestaticconstexprnoexcept |