#pragma once #include #include namespace Game::Object { class Camera { public: Camera() = default; DISABLE_COPY_AND_MOVE(Camera) ~Camera() = default; static Camera& getInstance(); void setPosition(float x, float y); void getPosition(float& x, float& y) const; void move(float deltaX, float deltaY); private: mutable std::mutex mMutex; float mX = 0.0f; float mY = 0.0f; }; }