14 #include "Data/ISFSArray.h" 16 #include "./Managers/IRoomManager.h" 18 #include <boost/shared_ptr.hpp> 19 #include <boost/enable_shared_from_this.hpp> 22 #pragma warning(disable:4786) // STL library: disable warning 4786; this warning is generated due to a Microsoft bug 56 class DLLImportExport
SFSRoom :
public Room,
public boost::enable_shared_from_this<SFSRoom>
64 SFSRoom(
long int id,
string name);
65 SFSRoom(
long int id,
string name,
string groupId);
66 virtual void Dispose();
68 static boost::shared_ptr<Room> FromSFSArray(boost::shared_ptr<ISFSArray> sfsa);
74 boost::shared_ptr<string> Name();
79 void Name(
string value);
87 boost::shared_ptr<string> GroupId();
97 void IsGame(
bool value);
107 void IsHidden(
bool value);
117 void IsJoined(
bool value);
122 bool IsPasswordProtected();
127 void IsPasswordProtected(
bool value);
131 void IsManaged(
bool value);
133 long int MaxSpectators();
134 void MaxSpectators(
long int value);
136 boost::shared_ptr<map<string, string> > Properties();
137 void Properties(boost::shared_ptr<map<string, string> > value);
145 boost::shared_ptr<vector<boost::shared_ptr<RoomVariable> > > GetVariables();
156 boost::shared_ptr<RoomVariable> GetVariable(
string name);
164 long int UserCount();
172 void UserCount(
long int value);
182 void MaxUsers(
long int value);
192 long int SpectatorCount();
197 void SpectatorCount(
long int value);
208 boost::shared_ptr<User> GetUserByName(
string name);
219 boost::shared_ptr<User> GetUserById(
long int id);
224 boost::shared_ptr<vector<boost::shared_ptr<User> > > UserList();
226 boost::shared_ptr<vector<boost::shared_ptr<User> > > PlayerList();
228 boost::shared_ptr<vector<boost::shared_ptr<User> > > SpectatorList();
230 void RemoveUser(boost::shared_ptr<User> user);
232 void SetVariable(boost::shared_ptr<RoomVariable> roomVariable);
234 void SetVariables(boost::shared_ptr<vector<boost::shared_ptr<RoomVariable> > > roomVariables);
245 bool ContainsVariable(
string name);
247 void AddUser(boost::shared_ptr<User> user);
258 bool ContainsUser(boost::shared_ptr<User> user);
260 boost::shared_ptr<IRoomManager> RoomManager();
261 void RoomManager(boost::shared_ptr<IRoomManager> value);
263 boost::shared_ptr<string> ToString();
265 void Merge(boost::shared_ptr<Room> anotherRoom);
282 boost::shared_ptr<string> name;
283 boost::shared_ptr<string> groupId;
287 bool isPasswordProtected;
289 boost::shared_ptr<map<string, boost::shared_ptr<RoomVariable> > > variables;
290 boost::shared_ptr<map<string, string> > properties;
291 boost::shared_ptr<IUserManager> userManager;
293 long int maxSpectators;
296 boost::shared_ptr<IRoomManager> roomManager;
304 void Init(
long int id,
string name,
string groupId);
305 void RemoveUserVariable(
string varName);
The Room object represent a server Room.
Definition: SFSRoom.h:56
Definition: SFSCodecError.cpp:14
Definition: IBuddyManager.h:32
Definition: BuddyOnlineState.h:15
Definition: BaseVariable.cpp:15
Definition: SmartFox.cpp:24
Definition: ISFSArray.h:17