src/proto2/NetworkServer.hh
changeset 24 b81cb670e6b2
parent 23 8d802b573cf0
child 32 2ff929186c90
child 89 825c4613e087
equal deleted inserted replaced
23:8d802b573cf0 24:b81cb670e6b2
    10 
    10 
    11 // forward-declare
    11 // forward-declare
    12 class NetworkServerPlayer;
    12 class NetworkServerPlayer;
    13 
    13 
    14 class NetworkServer : public NetworkCore {
    14 class NetworkServer : public NetworkCore {
    15 	friend class NetworkServerPlayer;
    15     friend class NetworkServerPlayer;
    16 
    16 
    17 	private:
    17     private:
    18 		uint16_t pid_pool;
    18         uint16_t pid_pool;
    19 	
    19     
    20 	public:
    20     public:
    21 		std::map<CL_NetComputer, NetworkServerPlayer*> players;
    21         std::map<CL_NetComputer, NetworkServerPlayer*> players;
    22 
    22 
    23 	public:
    23     public:
    24 		NetworkServer (GameState &state, const std::string &listen_port);
    24         NetworkServer (GameState &state, const std::string &listen_port);
    25 
    25 
    26 	private:
    26     private:
    27 		void on_connect (CL_NetComputer &computer);
    27         void on_connect (CL_NetComputer &computer);
    28 		void on_disconnect (CL_NetComputer &computer);
    28         void on_disconnect (CL_NetComputer &computer);
    29 
    29 
    30 	
    30     
    31 };
    31 };
    32 
    32 
    33 class NetworkServerPlayer : public RemotePlayer {
    33 class NetworkServerPlayer : public RemotePlayer {
    34 	private:
    34     private:
    35 		NetworkServer &server;
    35         NetworkServer &server;
    36 		CL_NetComputer &computer;
    36         CL_NetComputer &computer;
    37 		CL_NetObject_Server obj;
    37         CL_NetObject_Server obj;
    38 
    38 
    39 		CL_SlotContainer slots;
    39         CL_SlotContainer slots;
    40 
    40 
    41 		uint16_t pid;
    41         uint16_t pid;
    42 		
    42         
    43 	public:
    43     public:
    44 		NetworkServerPlayer (NetworkServer &server, CL_NetComputer &computer, uint16_t pid);
    44         NetworkServerPlayer (NetworkServer &server, CL_NetComputer &computer, uint16_t pid);
    45 
    45 
    46 		void disconnected (void);
    46         void disconnected (void);
    47 
    47 
    48 	private:
    48     private:
    49 		void on_move (CL_NetComputer &from, CL_NetPacket &pkt);
    49         void on_move (CL_NetComputer &from, CL_NetPacket &pkt);
    50 
    50 
    51 		void send_position_update (void);
    51         void send_position_update (void);
    52 };
    52 };
    53 
    53 
    54 #endif
    54 #endif