23 #ifndef DOOMSEEKER_REFRESHER_REFRESHER_H
24 #define DOOMSEEKER_REFRESHER_REFRESHER_H
29 #define gRefresher (Refresher::instance())
74 static bool isInstantiated();
75 static void deinstantiate();
99 class MasterClientInfo;
101 static const int MASTER_SERVER_TIMEOUT_DELAY = 10000;
103 static QMutex instanceMutex;
109 void concludeRefresh();
110 bool isAnythingToRefresh()
const;
111 Server *findRefreshingServer(
const QHostAddress &address,
unsigned short port);
113 void purgeNullServers();
115 void readPendingDatagram();
117 void startNewServerRefresh();
118 void resendCurrentServerRefreshesIfTimeout();
125 bool tryReadDatagramByMasterClient(QHostAddress &address,
126 unsigned short port, QByteArray &packet);
131 bool tryReadDatagramByServer(
const QHostAddress &address,
132 unsigned short port, QByteArray &packet);
137 void attemptTimeoutMasters();
138 void masterFinishedRefreshing();
139 void readAllPendingDatagrams();
140 void sendMasterQueries();
141 void sendServerQueries();