Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   Examples  

sue_tcpc.hpp

Go to the documentation of this file.
00001 #ifndef UPP_TCPC_HPP_SENTRY
00002 #define UPP_TCPC_HPP_SENTRY
00003 
00004 #include "sue_inet.hpp"
00005 
00007 
00025 class SUETcpClientSession : public SUEInetDuplexSession {
00027     char *ipaddr;
00029     int ipport;
00031     char *local_ipaddr;
00033     int local_ipport;
00034     
00036     bool connection_in_progress; 
00037 public:
00038     const char *InspectAddr() const { return ipaddr; }
00039     int InspectPort() const { return ipport; }
00040     const char *InspectLocalAddr() const { return local_ipaddr; }
00041     int InspectLocalPort() const { return local_ipport; }
00042 
00044 
00062     SUETcpClientSession(const char *ipaddr, int ipport,
00063                         int timeout, const char *greeting = 0,
00064                         const char *local_ip = 0, int localport = 0);
00066     virtual ~SUETcpClientSession();
00067 
00069 
00075     bool Up(SUEEventSelector *a_selector);
00076 
00078 
00082     bool Up(SUEEventSelector *a_selector,
00083             const char *src_ipaddr, int src_port);
00084 
00085     
00087 
00089     void Down() { Shutdown(); }
00090 
00092 
00102     virtual void HandleConnectionFailure() { Shutdown(); }
00103 
00104     virtual void HandleNewInput() = 0; 
00105     
00106     //virtual void HandleSessionTimeout();
00107     //virtual void HandleRemoteClosing();
00108     //virtual void HandleReadError();
00109 
00110     //virtual void ShutdownHook();
00111 
00112 private:
00113     virtual bool WantWrite() const;
00114     virtual void FdHandle(bool a_r, bool a_w, bool a_ex); 
00115 };
00116 
00117 
00118 #endif

Generated on Fri Feb 27 13:17:25 2004 for SUE Library by doxygen1.2.18