Complete Socket library documentation
[senf.git] / Socket / PacketSocketHandle.ih
index 9ae920e..87fd4e1 100644 (file)
 // Free Software Foundation, Inc.,
 // 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
 
+/** \file
+    \brief PacketProtocol and PacketSocketHandle internal header
+ */
+
 #ifndef IH_PacketSocketHandle_
 #define IH_PacketSocketHandle_ 1
 
@@ -31,12 +35,28 @@ namespace senf {
 
 namespace detail {
 
+    /** \brief Abstract address copier
+       \internal
+       
+       This class provides the abstract interface to copy a
+       link-local address to a destination address.
+     */
     struct LLAddressCopier
     {
         virtual ~LLAddressCopier() {}
         virtual unsigned operator()(unsigned char * target) const = 0;
     };
 
+    /** \brief Implementation of LLAddressCopier to copy arbitrary Range
+       \internal
+
+       This implementation of the LLAddressCopier interface will copy
+       an arbitrary range to the target address. This class is used,
+       to convert the compile-time polymorphism of templates
+       (provided by the \c ForwardRange template argument) into
+       runtime polymorphism (provided by the abstract LLAddressCopier
+       interface).
+     */
     template <class ForwardRange>
     struct Range_LLAddressCopier
         : public LLAddressCopier