1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
#pragma once #include <string> #include <cstdint> class Rng{ public: virtual uint32_t get()=0; virtual uint32_t get_uniform(uint32_t upbound)=0; }; class CryptoRng : public Rng{ public: uint32_t get(); uint32_t get_uniform(uint32_t upbound); };