equal
deleted
inserted
replaced
1 #ifndef NETWORK_NODE_HH |
1 #ifndef NETWORK_NODE_HH |
2 #define NETWORK_NODE_HH |
2 #define NETWORK_NODE_HH |
3 |
3 |
|
4 // forward-declare |
|
5 class NetworkNode; |
|
6 |
4 #include "NetworkTCP.hh" |
7 #include "NetworkTCP.hh" |
|
8 #include "NetworkUDP.hh" |
|
9 #include "NetworkSession.hh" |
|
10 |
|
11 enum NetworkNodeType { |
|
12 NETWORK_NODE_SERVER_CLIENT, |
|
13 NETWORK_NODE_CLIENT_SERVER |
|
14 }; |
5 |
15 |
6 class NetworkNode { |
16 class NetworkNode { |
7 private: |
17 private: |
8 NetworkSession &session; |
18 NetworkSession &session; |
9 NetworkTCPTransport *tcp; |
19 NetworkTCPTransport *tcp; |
13 CL_SlotContainer slots; |
23 CL_SlotContainer slots; |
14 |
24 |
15 private: |
25 private: |
16 NetworkNode (NetworkSession &session, NetworkTCPTransport *tcp, NetworkUDP &udp, const NetworkAddress &address); |
26 NetworkNode (NetworkSession &session, NetworkTCPTransport *tcp, NetworkUDP &udp, const NetworkAddress &address); |
17 |
27 |
18 NetworkNode (const NetworkNode ©) { } |
28 NetworkNode (const NetworkNode ©); |
19 ~NetworkNode (void); |
29 ~NetworkNode (void); |
20 NetworkNode& operator= (const NetworkNode ©) { } |
30 NetworkNode& operator= (const NetworkNode ©); |
|
31 |
|
32 void on_disconnect (void); |
|
33 |
|
34 CL_Signal_v0 _sig_disconnected; |
21 |
35 |
22 public: |
36 public: |
23 void send (NetworkChannelID channel_id, const NetworkPacket &pkt, bool reliable = true); |
37 void send (NetworkChannelID channel_id, const NetworkPacket &pkt, bool reliable = true); |
24 |
38 |
25 const NetworkAddress& getRemoteAddress (void); |
39 const NetworkAddress& getRemoteAddress (void); |
|
40 |
|
41 CL_Signal_v0& sig_disconnected (void) { return _sig_disconnected; } |
26 }; |
42 }; |
27 |
43 |
28 #endif /* NETWORK_NODE_HH */ |
44 #endif /* NETWORK_NODE_HH */ |