class csclient
{
public:
csclient(csclientimp* imp);
csclient(csclientimp* imp, const csaddress* addr);
// will immediately connect
virtual ~csclient();
// will close connection
virtual int connect();
virtual int connect(const csaddress* addr);
virtual int connected();
virtual void disconnect();
virtual data_connection* connection() const;
virtual csaddress* address() const;
// may return 0 if not connected
virtual int read(char* buffer, int maxbytes);
virtual int readmsg(char* buffer, int maxbytes);
virtual int write(const char* buffer, int nrbytes);
virtual int writemsg(const char* buffer, int nrbytes);
virtual int ready(timeval* timeout = NULL); // is data available?
virtual int fd() const;
protected:
void init(csclientimp* imp, const csaddress* addr);
csclientimp* _imp;
};
slide: csclient