summaryrefslogtreecommitdiff
path: root/src/lobby.h
diff options
context:
space:
mode:
authorVegard Storheil Eriksen <zyp@jvnv.net>2010-12-25 12:54:59 +0100
committerVegard Storheil Eriksen <zyp@jvnv.net>2010-12-25 12:54:59 +0100
commitfae209a9e93400c3a2072befda9c820634cf9278 (patch)
tree2d69e2c75fff0e08468c168f773abbc939a2ff03 /src/lobby.h
parent94a1189d757f0269ac081ad2d750152e30564986 (diff)
Restructured repository.HEADmaster
Diffstat (limited to 'src/lobby.h')
-rw-r--r--src/lobby.h33
1 files changed, 33 insertions, 0 deletions
diff --git a/src/lobby.h b/src/lobby.h
new file mode 100644
index 0000000..c445506
--- /dev/null
+++ b/src/lobby.h
@@ -0,0 +1,33 @@
+#ifndef LOBBY_H
+#define LOBBY_H
+
+#include <boost/asio.hpp>
+
+#include <vector>
+
+#include "tcpserver.h"
+#include "client.h"
+
+class Lobby {
+ private:
+ boost::asio::io_service io_service;
+ TCPServer server;
+
+ std::vector<Client::p> waiting;
+
+ //! Handle new connection.
+ void handle_connect(Connection::p connection);
+
+ //! Handle login.
+ void handle_login(Connection::p connection, Message::p msg);
+
+ //! Handle action.
+ void handle_action(Client::p client, int game_mode);
+
+ public:
+ Lobby();
+
+ void run();
+};
+
+#endif