--- a/src/proto2/NetworkNode.hh Tue Nov 18 22:58:50 2008 +0000
+++ b/src/proto2/NetworkNode.hh Thu Nov 20 19:25:56 2008 +0000
@@ -1,7 +1,17 @@
#ifndef NETWORK_NODE_HH
#define NETWORK_NODE_HH
+// forward-declare
+class NetworkNode;
+
#include "NetworkTCP.hh"
+#include "NetworkUDP.hh"
+#include "NetworkSession.hh"
+
+enum NetworkNodeType {
+ NETWORK_NODE_SERVER_CLIENT,
+ NETWORK_NODE_CLIENT_SERVER
+};
class NetworkNode {
private:
@@ -15,14 +25,20 @@
private:
NetworkNode (NetworkSession &session, NetworkTCPTransport *tcp, NetworkUDP &udp, const NetworkAddress &address);
- NetworkNode (const NetworkNode ©) { }
+ NetworkNode (const NetworkNode ©);
~NetworkNode (void);
- NetworkNode& operator= (const NetworkNode ©) { }
+ NetworkNode& operator= (const NetworkNode ©);
+
+ void on_disconnect (void);
+
+ CL_Signal_v0 _sig_disconnected;
public:
void send (NetworkChannelID channel_id, const NetworkPacket &pkt, bool reliable = true);
const NetworkAddress& getRemoteAddress (void);
+
+ CL_Signal_v0& sig_disconnected (void) { return _sig_disconnected; }
};
#endif /* NETWORK_NODE_HH */