{
# include SENF_FIXED_PARSER()
- SENF_PARSER_PRIVATE_BITFIELD ( subtype, 4, unsigned );
- SENF_PARSER_SKIP_BITS ( 4 ); //skip type and version
+ SENF_PARSER_PRIVATE_BITFIELD ( subtype, 4, unsigned ); //<pkgdraw: hide
+ //skip type and version
+ SENF_PARSER_SKIP_BITS ( 4 ); //<pkgdraw: hide
//jump to fist address field
- SENF_PARSER_SKIP ( 3 );
+ SENF_PARSER_SKIP ( 3 ); //<pkgdraw: hide
SENF_PARSER_FIELD ( destinationAddress, MACAddressParser );
SENF_PARSER_FIELD ( sourceAddress, MACAddressParser );
SENF_PARSER_FIELD ( bssid, MACAddressParser );
{
# include SENF_PARSER()
- SENF_PARSER_PRIVATE_BITFIELD ( subtype, 4, unsigned );
- SENF_PARSER_SKIP_BITS ( 4 ); //skip type and version
+ SENF_PARSER_PRIVATE_BITFIELD ( subtype, 4, unsigned ); //<pkgdraw: hide
+ //skip type and version
+ SENF_PARSER_SKIP_BITS ( 4 ); //<pkgdraw: hide
//jump to fist address field
- SENF_PARSER_SKIP ( 3, 3 );
+ SENF_PARSER_SKIP ( 3, 3 ); //<pkgdraw: hide
SENF_PARSER_FIELD ( receiverAddress, MACAddressParser );
//only RTS frame contains a source address field
struct WLANPacket_DataFrameParser : public senf::PacketParserBase
{
# include SENF_PARSER()
- SENF_PARSER_PRIVATE_BITFIELD ( subtype, 4, unsigned );
+ SENF_PARSER_PRIVATE_BITFIELD ( subtype, 4, unsigned ); //<pkgdraw: hide
//jump to 'toDS' and 'fromDS' bits
//skip type and version
- SENF_PARSER_SKIP_BITS ( 4 );
+ SENF_PARSER_SKIP_BITS ( 4 ); //<pkgdraw: hide
//skip other flags
- SENF_PARSER_SKIP_BITS ( 6 );
+ SENF_PARSER_SKIP_BITS ( 6 ); //<pkgdraw: hide
//needed in data frames due to the variable address fields
- SENF_PARSER_PRIVATE_BITFIELD ( dsBits, 2, unsigned );
+ SENF_PARSER_PRIVATE_BITFIELD ( dsBits, 2, unsigned ); //<pkgdraw: hide
//skip duration field
- SENF_PARSER_SKIP ( 2, 0 );
+ SENF_PARSER_SKIP ( 2, 2 ); //<pkgdraw: hide
SENF_PARSER_PRIVATE_FIELD ( addr1, MACAddressParser );
SENF_PARSER_PRIVATE_FIELD ( addr2, MACAddressParser );
\par Fields:
\ref WLANPacketParser
+ \image html WLANPacket.png
\ingroup protocolbundle_80211
*/