X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=Socket%2FPacketSocketHandle.ih;h=87fd4e195fb90772e4e2d410ddb7352e87e5ba87;hb=33157146abaca548e145c577a0840cd1bd427789;hp=62ead40354880718f0cec476705d967ceb48e23d;hpb=d0006132bfcb3ab442cf66b600ed3fad36f1ac2c;p=senf.git diff --git a/Socket/PacketSocketHandle.ih b/Socket/PacketSocketHandle.ih index 62ead40..87fd4e1 100644 --- a/Socket/PacketSocketHandle.ih +++ b/Socket/PacketSocketHandle.ih @@ -35,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 struct Range_LLAddressCopier : public LLAddressCopier