PPI: Checkin of first compiling (yet not working) version
[senf.git] / Packets / DefaultBundle / UDPPacket.hh
index bc3ab1d..560c360 100644 (file)
@@ -20,6 +20,9 @@
 // Free Software Foundation, Inc.,
 // 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
 
+/** \file
+    \brief UDPPacket public header */
+
 #ifndef HH_UDPPacket_
 #define HH_UDPPacket_ 1
 
 
 namespace senf {
 
-    ///\addtogroup protocolbundle_default
-    ///@{
+    /** \brief Parse a UDP packet
+
+        Parser implementing the UDP header. The fields implemented are:
 
-    // See RFC768
+        \see UDPPacketType
+            <a href="http://tools.ietf.org/html/rfc768">RFC 768</a>
+     */
     struct Parse_UDP : public PacketParserBase
     {
-        SENF_PACKET_PARSER_INIT(Parse_UDP);
+        typedef Parse_UInt16 Parse_16bit;
 
-        ///////////////////////////////////////////////////////////////////////////
+#       ifndef DOXYGEN
 
-        typedef Parse_UInt16 Parse_16bit;
+        SENF_PACKET_PARSER_INIT(Parse_UDP);
 
         SENF_PACKET_PARSER_DEFINE_FIXED_FIELDS(
             ((Field)( source,      Parse_16bit ))
             ((Field)( destination, Parse_16bit ))
             ((Field)( length,      Parse_16bit ))
             ((Field)( crc,         Parse_16bit )) );
+
+#       else
+
+        Parse_16bit source();
+        Parse_16bit destination();
+        Parse_16bit length();
+        Parse_16bit crc();
+
+#       endif
     };
 
+    /** \brief UDP packet
+        
+        \par Packet type (typedef):
+            \ref UDPPacket
+
+        \par Fields:
+            \ref Parse_UDP
+
+        \ingroup protocolbundle_default
+     */
     struct UDPPacketType
         : public PacketTypeBase,
           public PacketTypeMixin<UDPPacketType>
@@ -65,9 +90,8 @@ namespace senf {
         static void dump(packet p, std::ostream & os);
     };
 
+    /** \brief UDP packet typedef */
     typedef UDPPacketType::packet UDPPacket;
-
-    ///@}
 }