src/proto2/NetworkTCP.hh
branchno-netsession
changeset 33 e53f09b378f4
parent 32 2ff929186c90
child 34 1ea6554d703e
equal deleted inserted replaced
32:2ff929186c90 33:e53f09b378f4
    49     
    49     
    50     protected:
    50     protected:
    51         CL_SlotContainer slots; 
    51         CL_SlotContainer slots; 
    52     
    52     
    53     public:
    53     public:
    54         NetworkTCPTransport (CL_Socket socket);
    54         NetworkTCPTransport (CL_Socket &socket);
    55 
    55 
    56     private:
    56     private:
    57         void on_read (void);
    57         void on_read (void);
    58         void on_write (void);
    58         void on_write (void);
    59         void on_disconnected (void);
    59         void on_disconnected (void);
    60 
    60 
    61     public:
    61     public:
       
    62         NetworkAddress getRemoteAddress (void);
       
    63 
    62         void write_packet (const NetworkPacket &packet);
    64         void write_packet (const NetworkPacket &packet);
    63         
    65         
    64         CL_Signal_v1<const NetworkPacket&> sig_packet;
    66         CL_Signal_v1<const NetworkPacket&> sig_packet;
    65         CL_Signal_v0 sig_disconnect;
    67         CL_Signal_v0 sig_disconnect;
    66 };
    68 };
    73         NetworkTCPServer (const NetworkAddress &listen_addr);
    75         NetworkTCPServer (const NetworkAddress &listen_addr);
    74 
    76 
    75     private:
    77     private:
    76         void on_accept (void);
    78         void on_accept (void);
    77 
    79 
       
    80     protected:
       
    81         virtual NetworkTCPTransport buildTransport (CL_Socket &socket);
       
    82 
    78     public:
    83     public:
    79         CL_Signal_v1<NetworkTCPTransport *> sig_client;
    84         CL_Signal_v1<NetworkTCPTransport *> sig_client;
    80 };
    85 };
    81 
    86 
    82 class NetworkTCPClient : public NetworkTCPTransport {
    87 class NetworkTCPClient : public NetworkTCPTransport {