#ifndef FORTUNA_ENTROPY_SRC_H #define FORTUNA_ENTROPY_SRC_H #include "event_adder_impl.h" #include "event_scheduler.h" namespace fortuna { namespace accumulator { class EntropySrc { public: virtual void schedule(accumulator::EventScheduler scheduler) = 0; virtual void event(accumulator::EventAdderImpl adder) = 0; static constexpr const std::size_t max_event_length{32}; EntropySrc(const EntropySrc&) = delete; EntropySrc& operator=(const EntropySrc&) = delete; ~EntropySrc() noexcept; }; } //namespace accumulator } //namespace fortuna #endif//FORTUNA_ENTROPY_SRC_H