diff options
Diffstat (limited to 'src/crepe/manager/ReplayManager.h')
-rw-r--r-- | src/crepe/manager/ReplayManager.h | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/src/crepe/manager/ReplayManager.h b/src/crepe/manager/ReplayManager.h new file mode 100644 index 0000000..242eae4 --- /dev/null +++ b/src/crepe/manager/ReplayManager.h @@ -0,0 +1,32 @@ +#pragma once + +#include "Manager.h" + +namespace crepe { + +class ReplaySystem; +class Memento; + +typedef size_t recording_t; + +class ReplayManager : public Manager { +public: + ReplayManager(Mediator & mediator); + friend class ReplaySystem; + +protected: + void record_frame(); + +private: + bool recording; + struct Recording { + recording_t id; + std::vector<Memento> frames; + }; +public: + void record_start(); + recording_t record_end(); + +}; + +} // namespace crepe |