Whitespce cleanup: Remove whitespace at end-on-line, remove tabs, wrap
[senf.git] / senf / Packets / 80211Bundle / WLANPacket.hh
index c632aa5..ddbe46c 100644 (file)
 #ifndef HH_SENF_Packets_80211Bundle_WLANPacket_
 #define HH_SENF_Packets_80211Bundle_WLANPacket_ 1
 
-#include "../../Packets/Packets.hh"
-#include "../DefaultBundle/EthernetPacket.hh"
-#include "../DefaultBundle/LlcSnapPacket.hh"
+#include <senf/Packets/Packets.hh>
+#include <senf/Packets/DefaultBundle/EthernetPacket.hh>
+#include <senf/Packets/DefaultBundle/LlcSnapPacket.hh>
+
+///////////////////////////////hh.p////////////////////////////////////////
 
 namespace senf
 {
@@ -39,7 +41,7 @@ namespace senf
 
         Frame base class.
      */
-    struct WLANPacketParser : public senf::PacketParserBase
+    struct WLANPacketParser : public PacketParserBase
     {
     #   include SENF_PARSER()
 
@@ -91,12 +93,14 @@ namespace senf
         boost::uint16_t sequenceNumber() const {
             return (uint16_t)(seqNumber_2()) << 4 | seqNumber_1();
         };
+
+        void sequenceNumber(boost::uint16_t sn);
     };
 
     /** \brief WLAN Management frame packet
 
         \par Packet type (typedef):
-            \refWLANPacket_MgtFrame
+            \ref WLANPacket_MgtFrame
 
         \par Fields:
             \ref WLANPacket_MgtFrameParser
@@ -105,20 +109,23 @@ namespace senf
         \ingroup protocolbundle_80211
      */
     struct WLANPacket_MgtFrameType
-        : public senf::PacketTypeBase,
-          public senf::PacketTypeMixin<WLANPacket_MgtFrameType>
+        : public PacketTypeBase,
+          public PacketTypeMixin<WLANPacket_MgtFrameType>
     {
-        typedef senf::PacketTypeMixin<WLANPacket_MgtFrameType> mixin;
-        typedef senf::ConcretePacket<WLANPacket_MgtFrameType> packet;
+        typedef PacketTypeMixin<WLANPacket_MgtFrameType> mixin;
+        typedef ConcretePacket<WLANPacket_MgtFrameType> packet;
         typedef WLANPacket_MgtFrameParser parser;
 
         using mixin::init;
         using mixin::initSize;
-        using senf::PacketTypeBase::nextPacketRange;
+        using PacketTypeBase::nextPacketRange;
 
         static void dump(packet p, std::ostream &os);
     };
 
+    /** \brief WLAN Management frame packet typedef
+        \ingroup protocolbundle_80211
+     */
     typedef WLANPacket_MgtFrameType::packet WLANPacket_MgtFrame;
 
     ///////////////////////////////////////////////////////////////////////////
@@ -134,7 +141,7 @@ namespace senf
 
         SENF_PARSER_INHERIT(WLANPacketParser);
 
-        SENF_PARSER_FIELD            ( receiverAddress, MACAddressParser );
+        SENF_PARSER_FIELD   ( receiverAddress, MACAddressParser );
 
         //only RTS frame contains a source address field
         //variant is also needed to set correct subtype value
@@ -160,20 +167,23 @@ namespace senf
         \ingroup protocolbundle_80211
      */
     struct WLANPacket_CtrlFrameType
-        : public senf::PacketTypeBase,
-          public senf::PacketTypeMixin<WLANPacket_CtrlFrameType>
+        : public PacketTypeBase,
+          public PacketTypeMixin<WLANPacket_CtrlFrameType>
     {
-        typedef senf::PacketTypeMixin<WLANPacket_CtrlFrameType> mixin;
-        typedef senf::ConcretePacket<WLANPacket_CtrlFrameType> packet;
+        typedef PacketTypeMixin<WLANPacket_CtrlFrameType> mixin;
+        typedef ConcretePacket<WLANPacket_CtrlFrameType> packet;
         typedef WLANPacket_CtrlFrameParser parser;
 
         using mixin::init;
         using mixin::initSize;
-        using senf::PacketTypeBase::nextPacketRange;
+        using PacketTypeBase::nextPacketRange;
 
         static void dump(packet p, std::ostream &os);
     };
 
+    /** \brief WLAN Control frame packet typedef
+        \ingroup protocolbundle_80211
+     */
     typedef WLANPacket_CtrlFrameType::packet WLANPacket_CtrlFrame;
 
     ///////////////////////////////////////////////////////////////////////////
@@ -206,6 +216,8 @@ namespace senf
             return (uint16_t)(seqNumber_2()) << 4 | seqNumber_1();
         };
 
+        void sequenceNumber(boost::uint16_t sn);
+
         // TODO fourth address field in case of WDS
         // SENF_PARSER_PRIVATE_VARIANT (wds_, dsBits,
         //     ( novalue ( disable_addr4,               VoidPacketParser ))
@@ -244,30 +256,37 @@ namespace senf
         \ingroup protocolbundle_80211
      */
     struct WLANPacket_DataFrameType
-        : public senf::PacketTypeBase,
-          public senf::PacketTypeMixin<WLANPacket_DataFrameType>
+        : public PacketTypeBase,
+          public PacketTypeMixin<WLANPacket_DataFrameType>
     {
-        typedef senf::PacketTypeMixin<WLANPacket_DataFrameType> mixin;
-        typedef senf::ConcretePacket<WLANPacket_DataFrameType> packet;
+        typedef PacketTypeMixin<WLANPacket_DataFrameType> mixin;
+        typedef ConcretePacket<WLANPacket_DataFrameType> packet;
         typedef WLANPacket_DataFrameParser parser;
 
         using mixin::init;
         using mixin::initSize;
         using mixin::nextPacketRange;
 
-        static factory_t nextPacketType(packet p) { 
-            return p->subtype() == 0 || p->subtype() == 8 
-                ? LlcSnapPacket::factory() 
+        static factory_t nextPacketType(packet p) {
+            return p->subtype() == 0 || p->subtype() == 8
+                ? LlcSnapPacket::factory()
                 : no_factory();
         }
 
         static void dump(packet p, std::ostream &os);
     };
 
+    /** \brief WLAN Data frame packet typedef
+        \ingroup protocolbundle_80211
+     */
     typedef WLANPacket_DataFrameType::packet WLANPacket_DataFrame;
 }
 
-#endif /* HH_SENF_Packets_80211Bundle_WLANPacket_ */
+///////////////////////////////hh.e////////////////////////////////////////
+//#include "WLANPacket.cci"
+//#include "WLANPacket.ct"
+//#include "WLANPacket.cti"
+#endif
 
 \f
 // Local Variables: