X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=Socket%2FSocketHandle.hh;h=9f41494779da8b9480eb40ee2e49289806981c57;hb=58a75247c7915bf6fa5e8205d06cdc4a9adfc537;hp=6d36be8c225dd3951c65a0400d02dbaa928cc197;hpb=2cf8d7ad86c57dd87314c1ea7bf980a189d48552;p=senf.git diff --git a/Socket/SocketHandle.hh b/Socket/SocketHandle.hh index 6d36be8..9f41494 100644 --- a/Socket/SocketHandle.hh +++ b/Socket/SocketHandle.hh @@ -24,8 +24,8 @@ \brief SocketHandle public header */ -#ifndef HH_SocketHandle_ -#define HH_SocketHandle_ 1 +#ifndef HH_SENF_Socket_SocketHandle_ +#define HH_SENF_Socket_SocketHandle_ 1 // Custom includes #include // std::auto_ptr @@ -147,6 +147,16 @@ namespace senf { every derived class. See the state() documentation. */ + template + Facet const & facet(); ///< Access a protocol facet + /**< This member will try to access the given protocol facet + of the socket. If \a Facet is a valid facet of the + protocol, it is returned, otherwise \c std::bad_cast + will be thrown. + \throws std::bad_cast if \a Facet is not a protocol + facet of this socket + \returns the \a Facet protocol facet of this socket */ + protected: explicit SocketHandle(std::auto_ptr body); ///< Initialize SocketHandle providing the protocol