34 virtual std::shared_ptr<Room>
createRoom(
const std::string &
id,
const std::string &name =
"",
35 size_t maxPlayers = 4,
bool isPrivate =
false,
36 float gameSpeedMultiplier = 1.0f) = 0;
43 virtual std::shared_ptr<Room>
getRoom(
const std::string &
id) = 0;
75 virtual bool update(
float deltaTime) = 0;
Interface for managing game rooms.
virtual std::vector< std::shared_ptr< Room > > getPublicRooms()=0
Get all public rooms (not private)
virtual std::vector< std::shared_ptr< Room > > getAllRooms()=0
Get all active rooms.
virtual std::shared_ptr< Room > createRoom(const std::string &id, const std::string &name="", size_t maxPlayers=4, bool isPrivate=false, float gameSpeedMultiplier=1.0f)=0
Create a new room.
virtual size_t getRoomCount() const =0
Get number of active rooms.
virtual bool update(float deltaTime)=0
Update all rooms (called by server loop)
virtual ~IRoomManager()=default
virtual bool removeRoom(const std::string &id)=0
Remove a room by ID.
virtual std::shared_ptr< Room > getRoom(const std::string &id)=0
Retrieve a room by ID.