#ifndef _SCENE_H #define _SCENE_H #include #include #include #include namespace smo { namespace simulator { class Scene { public: using Id = uint32_t; Scene(void) : cursor(commands) {} ~Scene() = default; bool hasMentalEntity(const MentalEntity::Id menty) const; MentalEntity::Id addMentalEntity(const MentalEntity& menty); void replaceMentalEntity(const MentalEntity::Id menty, const MentalEntity& newMenty); void removeMentalEntity(const MentalEntity::Id menty); void executeInd(void); CommandList::Cursor haltInd(void); private: std::map menties; CommandList commands; CommandList::Cursor cursor; }; } // namespace simulator } // namespace smo #endif