#pragma once #include #include using namespace std::chrono_literals; #include "People.h" #include "Canvas.h" #include "CollisionContext.h" class Museum { public: Museum(); virtual ~Museum(); public: People people; Canvas canvas; CollisionContext collision; public: bool paused = true; void update(); void skip_forward(); void skip_backward(); private: unsigned long jump = 0; private: bool working = true; std::thread * worker = nullptr; void work(); private: unsigned long long tick = 0; static constexpr unsigned snapshot_ticks = 50; static constexpr std::chrono::milliseconds tick_interval = 15ms; };