#pragma once #include "interfaces/generation_tracker.hpp" #include class GenerationTracker : public IGenerationTracker { public: explicit GenerationTracker(bool is_paused) noexcept; [[nodiscard]] auto get_current_generation() const noexcept -> std::uint32_t override; void set_current_generation(std::uint32_t current_generation) noexcept override; [[nodiscard]] auto get_is_paused() const noexcept -> bool override; void set_is_paused(bool is_paused) noexcept override; private: std::uint32_t _current_generation = 0U; bool _is_paused; };