// vim:fileencoding=utf-8:foldmethod=marker #ifndef SPLITMIX64_H #define SPLITMIX64_H #include "../../common/aliases/aliases.h" typedef struct WpSplitmix64State { u64 seed; } WpSplitmix64State; WpSplitmix64State wpPrngSplitmix64Init(void); WpSplitmix64State wpPrngSplitmix64InitWithSeed(u64 seed); u64 wpPrngSplitmix64(WpSplitmix64State *state); u64 wpPrngSplitmix64InRange(WpSplitmix64State *state, u64 start, u64 end); u64 wpPrngSplitmix64Choice(WpSplitmix64State *state, u64 available_choices); #endif // !SPLITMIX64_H