X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=Socket%2FTCPProtocol.hh;h=9048e3e0bf0a1553b09fbd8d9106e4d6aabd3650;hb=9a988902090d28007578e93bffd809f6bd913155;hp=3dba9e291b34dbf1a26253ed6ca59cc74ce02f01;hpb=ac6a813d9d99f7add4e13aff7a4bcd314d5604a6;p=senf.git diff --git a/Socket/TCPProtocol.hh b/Socket/TCPProtocol.hh index 3dba9e2..9048e3e 100644 --- a/Socket/TCPProtocol.hh +++ b/Socket/TCPProtocol.hh @@ -1,6 +1,6 @@ // $Id$ // -// Copyright (C) 2006 +// Copyright (C) 2006 // Fraunhofer Institut fuer offene Kommunikationssysteme (FOKUS) // Kompetenzzentrum fuer Satelitenkommunikation (SatCom) // Stefan Bund @@ -20,6 +20,10 @@ // Free Software Foundation, Inc., // 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +/** \file + \brief TCPProtocol public header + */ + #ifndef HH_TCPProtocol_ #define HH_TCPProtocol_ 1 @@ -31,20 +35,40 @@ namespace senf { + /// \addtogroup protocol_facets_group + /// @{ + + /** \brief Protocol facat to support TCP operations + This protocol facet provides all those protocol functions, + which are available on any TCP socket. + */ class TCPProtocol : public virtual SocketProtocol { public: - bool nodelay() const; - void nodelay(bool value) const; + bool nodelay() const; ///< Check current \c SO_NODELAY status + void nodelay(bool value) const; ///< Set \c SO_NODELAY status + /**< Enabling \c SO_NODELAY will disable the NAGLE + algorithm (which aggregates multiple writes into a + single network packet). Enabling nodelay() optimizes + the repsonse time at the expense of the bandwidth + efficiency. + \param[in] value \c SO_NODELAY state */ + + unsigned siocinq() const; ///< Return current size of the input queue + unsigned siocoutq() const; ///< Return current size of the output queue + + ///\name Abstract Interface Implementation + ///@{ - unsigned siocinq() const; - unsigned siocoutq() const; unsigned available() const; bool eof() const; + + ///@} }; + /// @} } ///////////////////////////////hh.e//////////////////////////////////////// @@ -56,5 +80,8 @@ namespace senf { // Local Variables: // mode: c++ +// fill-column: 100 // c-file-style: "senf" +// indent-tabs-mode: nil +// ispell-local-dictionary: "american" // End: