X-Git-Url: http://developer.intra2net.com/git/?p=libt2n;a=blobdiff_plain;f=src%2Fconnection.hxx;h=633798b14b1ac631a3c9495077fe11767d54b1a1;hp=94506e28f0d3b5e54ef3ff667743c071700d811a;hb=7087e18783f91d2b889e880462d1d1da24831c28;hpb=07e98688a1a8c3e915ce923f79261a88251a9edd diff --git a/src/connection.hxx b/src/connection.hxx index 94506e2..633798b 100644 --- a/src/connection.hxx +++ b/src/connection.hxx @@ -24,6 +24,8 @@ namespace libt2n { +/** @brief a connection between client and server. abstact. +*/ class connection { private: @@ -45,14 +47,25 @@ class connection virtual ~connection() { close(); } + /// is this connection closed or not bool is_closed() { return closed; } + /// close this connection virtual void close() { closed=true; } + /** @brief look for new data and store it in the local buffer + @param usec_timeout wait until new data is found, max timeout usecs. + -1: wait endless + NULL: no timeout + @retval true if new data was found (does not mean that the received data + is a complete packet though) + */ virtual bool fill_buffer(long long usec_timeout=-1)=0; bool get_packet(std::string& data); + + /// returns true if a complete data packet is in the buffer. retrieve it with get_packet(). bool packet_available() { return bytes_available(); }