89typedef std::map<std::string, GeneralsUser*>
UserMap;
99 virtual void init(
void);
103 virtual void handleRoomMessage(
const char *nick,
const char *message, MessageType messageType );
104 virtual void handlePlayerMessage(
const char *nick,
const char *message, MessageType messageType );
108 virtual void handlePlayerEnum(
bool success,
int gameSpyIndex,
const char *nick,
int flags );
118 double computeMatchFitness(
const std::string& i1,
const GeneralsUser *u1,
const std::string& i2,
const GeneralsUser *u2);
121 GeneralsUser* findUserInLadder(
const std::string& who,
int ladderID);
122 GeneralsUser* findUserInAnyLadder(
const std::string& who);
123 GeneralsUser* findNonLadderUser(
const std::string& who);
124 GeneralsUser* findNonMatchingUser(
const std::string& who);
126 void addUser(
const std::string& who);
127 void addUserInLadder(
const std::string& who,
int ladderID,
GeneralsUser *user);
128 void addUserInAnyLadder(
const std::string& who,
GeneralsUser *user);
129 void addNonLadderUser(
const std::string& who,
GeneralsUser *user);
130 void addNonMatchingUser(
const std::string& who,
GeneralsUser *user);
132 bool removeUser(
const std::string& who);
133 GeneralsUser* removeUserInLadder(
const std::string& who,
int ladderID);
134 GeneralsUser* removeUserInAnyLadder(
const std::string& who);
135 GeneralsUser* removeNonLadderUser(
const std::string& who);
136 GeneralsUser* removeNonMatchingUser(
const std::string& who);
138 void checkMatchesInUserMap(
UserMap& userMap,
int ladderID,
int numPlayers,
bool showPoolSize);
140 void dumpUsers(
void);
142 void sendMatchInfo(std::string name1, std::string name2, std::string name3, std::string name4,
143 std::string name5, std::string name6, std::string name7, std::string name8,
146 int numPlayers,
int ladderID);
150 bool handleUserInfo(
const char *nick,
const std::string&
msg);
151 bool handleUserWiden(
const char *nick);
158 time_t m_nextPoolSizeAnnouncement;
159 int m_secondsBetweenPoolSizeAnnouncements;
177 virtual void init(
void);
181 virtual void handleRoomMessage(
const char *nick,
const char *message, MessageType messageType );
182 virtual void handlePlayerMessage(
const char *nick,
const char *message, MessageType messageType );
186 virtual void handlePlayerEnum(
bool success,
int gameSpyIndex,
const char *nick,
int flags );
virtual void handlePlayerEnum(bool success, int gameSpyIndex, const char *nick, int flags)
virtual void handlePlayerChangedNick(const char *oldNick, const char *newNick)
virtual void checkMatches(void)
virtual void handlePlayerJoined(const char *nick)
virtual void handlePlayerLeft(const char *nick)
virtual void handleDisconnect(const char *reason)
virtual void handleRoomMessage(const char *nick, const char *message, MessageType messageType)
virtual void handlePlayerMessage(const char *nick, const char *message, MessageType messageType)
virtual ~GeneralsClientMatcher()
virtual void handleDisconnect(const char *reason)
virtual void handlePlayerLeft(const char *nick)
virtual void handlePlayerMessage(const char *nick, const char *message, MessageType messageType)
virtual void handlePlayerJoined(const char *nick)
virtual ~GeneralsMatcher()
virtual void checkMatches(void)
virtual void handlePlayerEnum(bool success, int gameSpyIndex, const char *nick, int flags)
virtual void handlePlayerChangedNick(const char *oldNick, const char *newNick)
virtual void handleRoomMessage(const char *nick, const char *message, MessageType messageType)
std::vector< int > pseudoPing
std::map< std::string, GeneralsUser * > UserMap
std::vector< bool > MapBitSet
std::map< int, UserMap > LadderMap