--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/src/proto2/NetworkServer.hh Mon Nov 03 22:59:50 2008 +0000
@@ -0,0 +1,39 @@
+#ifndef NETWORKSERVER_HH
+#define NETWORKSERVER_HH
+
+#include <list>
+
+#define NETWORK_SERVER_BACKLOG 8
+
+class NetworkServer : public NetworkBase {
+ private:
+ GameState *state;
+
+ std::map<CL_IPAddress, NetworkServerClient> client_sockets;
+
+ CL_EventListener listener;
+
+ CL_Slot slot_on_accept;
+
+ NetworkServer (GameState *state, const CL_IPAddress &listen_ip);
+
+ public:
+ static NetworkServer *newServer (void);
+
+ void run (void);
+
+ private:
+ void _onAccept (void);
+};
+
+class NetworkServerClient {
+ private:
+ NetworkServer &server;
+
+ private:
+ NetworkServerClient (NetworkServer &server);
+};
+
+void runNetworkServer (void);
+
+#endif