2 #include <samchon/protocol/Entity.hpp> 3 #include <samchon/protocol/IProtocol.hpp> 6 #include <samchon/library/CriticalSet.hpp> 13 namespace chat_service
40 virtual auto TAG() const ->
std::
string {
return "room"; };
93 virtual void replyData(std::shared_ptr<protocol::Invoke>)
override;
94 virtual void sendData(std::shared_ptr<protocol::Invoke>)
override;
100 virtual auto toXML() const ->
std::shared_ptr<library::XML> override;
An entity, a standard data class.
ChatUser * host
A host, who established the room.
library::CriticalSet< ChatService * > participants
Participants, ChatUser(s) in the room.
ChatRoomArray * roomArray
All rooms that the room is belonged to.
void registerClient(ChatService *)
Register a participant client.
void eraseClient(ChatService *)
Erase a participant client.
std::string name
Name of the room.
ChatRoom(ChatRoomArray *, const std::string &, ChatUser *)
Construct from rooms, name and host.