A Discrete-Event Network Simulator
API
Loading...
Searching...
No Matches
ns3::lrwpan::LrWpanMacHeader Class Reference

Represent the Mac Header with the Frame Control and Sequence Number fields. More...

#include "lr-wpan-mac-header.h"

+ Inheritance diagram for ns3::lrwpan::LrWpanMacHeader:
+ Collaboration diagram for ns3::lrwpan::LrWpanMacHeader:

Public Types

enum  AddrModeType { NOADDR = 0 , RESADDR = 1 , SHORTADDR = 2 , EXTADDR = 3 }
 The addressing mode types, see IEEE 802.15.4-2006, Table 80. More...
 
enum  KeyIdModeType { IMPLICIT = 0 , NOKEYSOURCE = 1 , SHORTKEYSOURCE = 2 , LONGKEYSOURCE = 3 }
 The addressing mode types, see IEEE 802.15.4-2006, Table 80. More...
 
enum  LrWpanMacType {
  LRWPAN_MAC_BEACON = 0 , LRWPAN_MAC_DATA = 1 , LRWPAN_MAC_ACKNOWLEDGMENT = 2 , LRWPAN_MAC_COMMAND = 3 ,
  LRWPAN_MAC_RESERVED
}
 The possible MAC types, see IEEE 802.15.4-2006, Table 79. More...
 

Public Member Functions

 LrWpanMacHeader ()
 
 LrWpanMacHeader (LrWpanMacType wpanMacType, uint8_t seqNum)
 Constructor.
 
 ~LrWpanMacHeader () override
 
uint32_t Deserialize (Buffer::Iterator start) override
 
uint8_t GetDstAddrMode () const
 Get the Dest.
 
uint16_t GetDstPanId () const
 Get the Destination PAN ID.
 
Mac64Address GetExtDstAddr () const
 Get the Destination Extended address.
 
Mac64Address GetExtSrcAddr () const
 Get the Source Extended address.
 
uint16_t GetFrameControl () const
 Get the Frame control field.
 
uint8_t GetFrameVer () const
 Get the Frame Version of Frame control field.
 
uint32_t GetFrmCounter () const
 Get the Auxiliary Security Header - Frame Counter Octets.
 
uint8_t GetFrmCtrlRes () const
 Get the Reserved bits of Frame control field.
 
TypeId GetInstanceTypeId () const override
 Get the most derived TypeId for this Object.
 
uint8_t GetKeyIdIndex () const
 Get the Auxiliary Security Header - Key Identifier - Key Index.
 
uint8_t GetKeyIdMode () const
 Get the Auxiliary Security Header - Security Control - Key Identifier Mode bits.
 
uint32_t GetKeyIdSrc32 () const
 Get the Auxiliary Security Header - Key Identifier - Key Source (2 Octets)
 
uint64_t GetKeyIdSrc64 () const
 Get the Auxiliary Security Header - Key Identifier - Key Source (4 Octets)
 
uint8_t GetSecControl () const
 Get the Auxiliary Security Header - Security Control Octet.
 
uint8_t GetSecCtrlReserved () const
 Get the Auxiliary Security Header - Security Control - Reserved bits.
 
uint8_t GetSecLevel () const
 Get the Auxiliary Security Header - Security Control - Security Level bits.
 
uint8_t GetSeqNum () const
 Get the frame Sequence number.
 
uint32_t GetSerializedSize () const override
 
Mac16Address GetShortDstAddr () const
 Get the Destination Short address.
 
Mac16Address GetShortSrcAddr () const
 Get the Source Short address.
 
uint8_t GetSrcAddrMode () const
 Get the Source Addressing Mode of Frame control field.
 
uint16_t GetSrcPanId () const
 Get the Source PAN ID.
 
LrWpanMacType GetType () const
 Get the header type.
 
bool IsAcknowledgment () const
 Returns true if the header is an ack.
 
bool IsAckReq () const
 Check if Ack.
 
bool IsBeacon () const
 Returns true if the header is a beacon.
 
bool IsCommand () const
 Returns true if the header is a command.
 
bool IsData () const
 Returns true if the header is a data.
 
bool IsFrmPend () const
 Check if Frame Pending bit of Frame Control is enabled.
 
bool IsPanIdComp () const
 Check if PAN ID Compression bit of Frame Control is enabled.
 
bool IsSecEnable () const
 Check if Security Enabled bit of Frame Control is enabled.
 
void Print (std::ostream &os) const override
 
void Serialize (Buffer::Iterator start) const override
 
void SetAckReq ()
 Set the Frame Control field "Ack. Request" bit to true.
 
void SetDstAddrFields (uint16_t panId, Mac16Address addr)
 Set Destination address fields.
 
void SetDstAddrFields (uint16_t panId, Mac64Address addr)
 Set Destination address fields.
 
void SetDstAddrMode (uint8_t addrMode)
 Set the Destination address mode.
 
void SetFrameControl (uint16_t frameControl)
 Set the whole Frame Control field.
 
void SetFrameVer (uint8_t ver)
 Set the Frame version.
 
void SetFrmCounter (uint32_t frmCntr)
 Set the auxiliary security header "Frame Counter" octet.
 
void SetFrmCtrlRes (uint8_t res)
 Set the Frame Control field "Reserved" bits.
 
void SetFrmPend ()
 Set the Frame Control field "Frame Pending" bit to true.
 
void SetKeyId (uint32_t keySrc, uint8_t keyIndex)
 Set the Key Index and originator.
 
void SetKeyId (uint64_t keySrc, uint8_t keyIndex)
 Set the Key Index and originator.
 
void SetKeyId (uint8_t keyIndex)
 Set the Key Index.
 
void SetKeyIdMode (uint8_t keyIdMode)
 Set the Security Control field "Key Identifier Mode" bits (2 bits)
 
void SetNoAckReq ()
 Set the Frame Control field "Ack. Request" bit to false.
 
void SetNoFrmPend ()
 Set the Frame Control field "Frame Pending" bit to false.
 
void SetNoPanIdComp ()
 Set the Frame Control field "PAN ID Compression" bit to false.
 
void SetPanIdComp ()
 Set the Frame Control field "PAN ID Compression" bit to true.
 
void SetSecControl (uint8_t secLevel)
 Set the auxiliary security header "Security Control" octet.
 
void SetSecCtrlReserved (uint8_t res)
 Set the Security Control field "Reserved" bits (3 bits)
 
void SetSecDisable ()
 Set the Frame Control field "Security Enabled" bit to false.
 
void SetSecEnable ()
 Set the Frame Control field "Security Enabled" bit to true.
 
void SetSecLevel (uint8_t secLevel)
 Set the Security Control field "Security Level" bits (3 bits)
 
void SetSeqNum (uint8_t seqNum)
 Set the Sequence number.
 
void SetSrcAddrFields (uint16_t panId, Mac16Address addr)
 Set Source address fields.
 
void SetSrcAddrFields (uint16_t panId, Mac64Address addr)
 Set Source address fields.
 
void SetSrcAddrMode (uint8_t addrMode)
 Set the Source address mode.
 
void SetType (LrWpanMacType wpanMacType)
 Set the Frame Control field "Frame Type" bits.
 
- Public Member Functions inherited from ns3::Header
 ~Header () override
 
virtual uint32_t Deserialize (Buffer::Iterator start, Buffer::Iterator end)
 Deserialize the object from a buffer iterator.
 
- Public Member Functions inherited from ns3::ObjectBase
virtual ~ObjectBase ()
 Virtual destructor.
 
void GetAttribute (std::string name, AttributeValue &value, bool permissive=false) const
 Get the value of an attribute, raising fatal errors if unsuccessful.
 
bool GetAttributeFailSafe (std::string name, AttributeValue &value) const
 Get the value of an attribute without raising errors.
 
void SetAttribute (std::string name, const AttributeValue &value)
 Set a single attribute, raising fatal errors if unsuccessful.
 
bool SetAttributeFailSafe (std::string name, const AttributeValue &value)
 Set a single attribute without raising errors.
 
bool TraceConnect (std::string name, std::string context, const CallbackBase &cb)
 Connect a TraceSource to a Callback with a context.
 
bool TraceConnectWithoutContext (std::string name, const CallbackBase &cb)
 Connect a TraceSource to a Callback without a context.
 
bool TraceDisconnect (std::string name, std::string context, const CallbackBase &cb)
 Disconnect from a TraceSource a Callback previously connected with a context.
 
bool TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb)
 Disconnect from a TraceSource a Callback previously connected without a context.
 

Static Public Member Functions

static TypeId GetTypeId ()
 Get the type ID.
 
- Static Public Member Functions inherited from ns3::Header
static TypeId GetTypeId ()
 Get the type ID.
 
- Static Public Member Functions inherited from ns3::Chunk
static TypeId GetTypeId ()
 Get the type ID.
 
- Static Public Member Functions inherited from ns3::ObjectBase
static TypeId GetTypeId ()
 Get the type ID.
 

Private Attributes

union { 
 
   uint32_t   m_auxKeyIdKeySrc32 
 Auxiliary security header - Key Source (4 Octets) More...
 
   uint64_t   m_auxKeyIdKeySrc64 
 Auxiliary security header - Key Source (8 Octets) More...
 
};  
 Auxiliary security header.
 
uint16_t m_addrDstPanId
 Dst PAN id (0 or 2 Octets)
 
Mac64Address m_addrExtDstAddr
 Dst Ext addr (0 or 8 Octets)
 
Mac64Address m_addrExtSrcAddr
 Src Ext addr (0 or 8 Octets)
 
Mac16Address m_addrShortDstAddr
 Dst Short addr (0 or 2 Octets)
 
Mac16Address m_addrShortSrcAddr
 Src Short addr (0 or 2 Octets)
 
uint16_t m_addrSrcPanId
 Src PAN id (0 or 2 Octets)
 
uint32_t m_auxFrmCntr
 Auxiliary security header - Frame Counter (4 Octets)
 
uint8_t m_auxKeyIdKeyIndex
 Auxiliary security header - Key Index (1 Octet)
 
uint8_t m_fctrlAckReq
 Frame Control field Bit 5.
 
uint8_t m_fctrlDstAddrMode
 Frame Control field Bit 10-11 = 0 - No DstAddr, 2 - ShtDstAddr, 3 - ExtDstAddr.
 
uint8_t m_fctrlFrmPending
 Frame Control field Bit 4.
 
uint8_t m_fctrlFrmType
 Frame Control field Bit 0-2 = 0 - Beacon, 1 - Data, 2 - Ack, 3 - Command.
 
uint8_t m_fctrlFrmVer
 Frame Control field Bit 12-13.
 
uint8_t m_fctrlPanIdComp
 Frame Control field Bit 6 = 0 - no compression, 1 - using only DstPanId for both Src and DstPanId.
 
uint8_t m_fctrlReserved
 Frame Control field Bit 7-9.
 
uint8_t m_fctrlSecU
 Frame Control field Bit 3 = 0 - no AuxSecHdr , 1 - security enabled AuxSecHdr present.
 
uint8_t m_fctrlSrcAddrMode
 Frame Control field Bit 14-15 = 0 - No SrcAddr, 2 - ShtSrcAddr, 3 - ExtSrcAddr.
 
uint8_t m_secctrlKeyIdMode
 Auxiliary security header - Security Control field - Bit 3-4 will indicate size of Key Id.
 
uint8_t m_secctrlReserved
 Auxiliary security header - Security Control field - Bit 5-7.
 
uint8_t m_secctrlSecLevel
 Auxiliary security header - Security Control field - Bit 0-2.
 
uint8_t m_SeqNum
 Sequence Number (1 Octet)
 

Additional Inherited Members

- Protected Member Functions inherited from ns3::ObjectBase
void ConstructSelf (const AttributeConstructionList &attributes)
 Complete construction of ObjectBase; invoked by derived classes.
 
virtual void NotifyConstructionCompleted ()
 Notifier called once the ObjectBase is fully constructed.
 

Detailed Description

Represent the Mac Header with the Frame Control and Sequence Number fields.

Definition at line 42 of file lr-wpan-mac-header.h.

Member Enumeration Documentation

◆ AddrModeType

The addressing mode types, see IEEE 802.15.4-2006, Table 80.

Enumerator
NOADDR 
RESADDR 
SHORTADDR 
EXTADDR 

Definition at line 60 of file lr-wpan-mac-header.h.

◆ KeyIdModeType

The addressing mode types, see IEEE 802.15.4-2006, Table 80.

Enumerator
IMPLICIT 
NOKEYSOURCE 
SHORTKEYSOURCE 
LONGKEYSOURCE 

Definition at line 71 of file lr-wpan-mac-header.h.

◆ LrWpanMacType

The possible MAC types, see IEEE 802.15.4-2006, Table 79.

Enumerator
LRWPAN_MAC_BEACON 

LRWPAN_MAC_BEACON.

LRWPAN_MAC_DATA 

LRWPAN_MAC_DATA.

LRWPAN_MAC_ACKNOWLEDGMENT 

LRWPAN_MAC_ACKNOWLEDGMENT.

LRWPAN_MAC_COMMAND 

LRWPAN_MAC_COMMAND.

LRWPAN_MAC_RESERVED 

LRWPAN_MAC_RESERVED.

Definition at line 48 of file lr-wpan-mac-header.h.

Constructor & Destructor Documentation

◆ LrWpanMacHeader() [1/2]

ns3::lrwpan::LrWpanMacHeader::LrWpanMacHeader ( )

Definition at line 21 of file lr-wpan-mac-header.cc.

References LRWPAN_MAC_DATA, NOADDR, SetDstAddrMode(), SetFrameVer(), SetFrmCtrlRes(), SetNoAckReq(), SetNoFrmPend(), SetNoPanIdComp(), SetSecDisable(), SetSrcAddrMode(), and SetType().

+ Here is the call graph for this function:

◆ LrWpanMacHeader() [2/2]

ns3::lrwpan::LrWpanMacHeader::LrWpanMacHeader ( LrWpanMacType wpanMacType,
uint8_t seqNum )

Constructor.

Parameters
wpanMacTypethe header MAC type
seqNumthe sequence number
Internal:
Data, ACK, Control MAC Header must have frame control and sequence number. Beacon MAC Header must have frame control, sequence number, source PAN Id, source address.

Definition at line 34 of file lr-wpan-mac-header.cc.

References NOADDR, SetDstAddrMode(), SetFrameVer(), SetFrmCtrlRes(), SetNoAckReq(), SetNoFrmPend(), SetNoPanIdComp(), SetSecDisable(), SetSeqNum(), SetSrcAddrMode(), and SetType().

+ Here is the call graph for this function:

◆ ~LrWpanMacHeader()

ns3::lrwpan::LrWpanMacHeader::~LrWpanMacHeader ( )
override

Definition at line 48 of file lr-wpan-mac-header.cc.

Member Function Documentation

◆ Deserialize()

uint32_t ns3::lrwpan::LrWpanMacHeader::Deserialize ( Buffer::Iterator start)
overridevirtual
Parameters
startan iterator which points to where the header should read from.
Returns
the number of bytes read.

This method is used by Packet::RemoveHeader to re-create a header from the byte buffer of a packet. The data read is expected to match bit-for-bit the representation of this header in real networks.

Note that data is not actually removed from the buffer to which the iterator points. Both Packet::RemoveHeader() and Packet::PeekHeader() call Deserialize(), but only the RemoveHeader() has additional statements to remove the header bytes from the underlying buffer and associated metadata.

Implements ns3::Header.

Definition at line 663 of file lr-wpan-mac-header.cc.

References EXTADDR, ns3::Buffer::Iterator::GetDistanceFrom(), IMPLICIT, IsPanIdComp(), IsSecEnable(), LONGKEYSOURCE, m_addrDstPanId, m_addrExtDstAddr, m_addrExtSrcAddr, m_addrShortDstAddr, m_addrShortSrcAddr, m_addrSrcPanId, m_fctrlDstAddrMode, m_fctrlSrcAddrMode, m_secctrlKeyIdMode, NOADDR, NOKEYSOURCE, ns3::ReadFrom(), ns3::Buffer::Iterator::ReadLsbtohU16(), ns3::Buffer::Iterator::ReadLsbtohU32(), ns3::Buffer::Iterator::ReadLsbtohU64(), ns3::Buffer::Iterator::ReadU8(), SetFrameControl(), SetFrmCounter(), SetKeyId(), SetSecControl(), SetSeqNum(), SHORTADDR, and SHORTKEYSOURCE.

+ Here is the call graph for this function:

◆ GetDstAddrMode()

uint8_t ns3::lrwpan::LrWpanMacHeader::GetDstAddrMode ( ) const

Get the Dest.

Addressing Mode of Frame control field

Returns
the Dest. Addressing Mode bits

Definition at line 118 of file lr-wpan-mac-header.cc.

References m_fctrlDstAddrMode.

Referenced by ns3::lrwpan::LrWpanMac::EnqueueInd(), ns3::lrwpan::LrWpanMac::McpsDataRequest(), ns3::lrwpan::LrWpanMac::PdDataConfirm(), ns3::lrwpan::LrWpanMac::PdDataIndication(), and ns3::lrwpan::LrWpanMac::RemovePendTxQElement().

+ Here is the caller graph for this function:

◆ GetDstPanId()

uint16_t ns3::lrwpan::LrWpanMacHeader::GetDstPanId ( ) const

Get the Destination PAN ID.

Returns
the Destination PAN ID

Definition at line 142 of file lr-wpan-mac-header.cc.

References m_addrDstPanId.

Referenced by ns3::lrwpan::LrWpanMac::McpsDataRequest(), ns3::lrwpan::LrWpanMac::PdDataIndication(), ns3::lrwpan::LrWpanMac::PrintTxQueue(), ns3::lrwpan::LrWpanMac::ReceiveBeacon(), and Serialize().

+ Here is the caller graph for this function:

◆ GetExtDstAddr()

Mac64Address ns3::lrwpan::LrWpanMacHeader::GetExtDstAddr ( ) const

Get the Destination Extended address.

Returns
the Destination Extended address

Definition at line 154 of file lr-wpan-mac-header.cc.

References m_addrExtDstAddr.

Referenced by ns3::lrwpan::LrWpanMac::EnqueueInd(), ns3::lrwpan::LrWpanMac::IsCoordDest(), ns3::lrwpan::LrWpanMac::PdDataConfirm(), ns3::lrwpan::LrWpanMac::PdDataIndication(), ns3::lrwpan::LrWpanMac::PrepareRetransmission(), ns3::lrwpan::LrWpanMac::PrintTxQueue(), ns3::lrwpan::LrWpanMac::PurgeInd(), ns3::lrwpan::LrWpanMac::RemovePendTxQElement(), and ns3::lrwpan::LrWpanMac::SetLrWpanMacState().

+ Here is the caller graph for this function:

◆ GetExtSrcAddr()

Mac64Address ns3::lrwpan::LrWpanMacHeader::GetExtSrcAddr ( ) const

Get the Source Extended address.

Returns
the Source Extended address

Definition at line 172 of file lr-wpan-mac-header.cc.

References m_addrExtSrcAddr.

Referenced by ns3::lrwpan::LrWpanMac::EnqueueInd(), ns3::lrwpan::LrWpanMac::PdDataConfirm(), ns3::lrwpan::LrWpanMac::PdDataIndication(), ns3::lrwpan::LrWpanMac::PrepareRetransmission(), ns3::lrwpan::LrWpanMac::PurgeInd(), ns3::lrwpan::LrWpanMac::ReceiveBeacon(), ns3::lrwpan::LrWpanMac::SendAssocResponseCommand(), and ns3::lrwpan::LrWpanMac::SetLrWpanMacState().

+ Here is the caller graph for this function:

◆ GetFrameControl()

uint16_t ns3::lrwpan::LrWpanMacHeader::GetFrameControl ( ) const

Get the Frame control field.

Returns
the Frame control field

Definition at line 71 of file lr-wpan-mac-header.cc.

References m_fctrlAckReq, m_fctrlDstAddrMode, m_fctrlFrmPending, m_fctrlFrmType, m_fctrlFrmVer, m_fctrlPanIdComp, m_fctrlReserved, m_fctrlSecU, and m_fctrlSrcAddrMode.

Referenced by Serialize().

+ Here is the caller graph for this function:

◆ GetFrameVer()

uint8_t ns3::lrwpan::LrWpanMacHeader::GetFrameVer ( ) const

Get the Frame Version of Frame control field.

Returns
the Frame Version bits

Definition at line 124 of file lr-wpan-mac-header.cc.

References m_fctrlFrmVer.

Referenced by ns3::lrwpan::LrWpanMac::PdDataIndication().

+ Here is the caller graph for this function:

◆ GetFrmCounter()

uint32_t ns3::lrwpan::LrWpanMacHeader::GetFrmCounter ( ) const

Get the Auxiliary Security Header - Frame Counter Octets.

Returns
the Auxiliary Security Header - Frame Counter Octets

Definition at line 190 of file lr-wpan-mac-header.cc.

References m_auxFrmCntr.

Referenced by Serialize().

+ Here is the caller graph for this function:

◆ GetFrmCtrlRes()

uint8_t ns3::lrwpan::LrWpanMacHeader::GetFrmCtrlRes ( ) const

Get the Reserved bits of Frame control field.

Returns
the Reserved bits

Definition at line 112 of file lr-wpan-mac-header.cc.

References m_fctrlReserved.

◆ GetInstanceTypeId()

TypeId ns3::lrwpan::LrWpanMacHeader::GetInstanceTypeId ( ) const
overridevirtual

Get the most derived TypeId for this Object.

This method is typically implemented by ns3::Object::GetInstanceTypeId but some classes which derive from ns3::ObjectBase directly have to implement it themselves.

Returns
The TypeId associated to the most-derived type of this instance.

Implements ns3::ObjectBase.

Definition at line 445 of file lr-wpan-mac-header.cc.

References GetTypeId().

+ Here is the call graph for this function:

◆ GetKeyIdIndex()

uint8_t ns3::lrwpan::LrWpanMacHeader::GetKeyIdIndex ( ) const

Get the Auxiliary Security Header - Key Identifier - Key Index.

Returns
the Auxiliary Security Header - Key Identifier - Key Index

Definition at line 226 of file lr-wpan-mac-header.cc.

References m_auxKeyIdKeyIndex.

Referenced by Serialize().

+ Here is the caller graph for this function:

◆ GetKeyIdMode()

uint8_t ns3::lrwpan::LrWpanMacHeader::GetKeyIdMode ( ) const

Get the Auxiliary Security Header - Security Control - Key Identifier Mode bits.

Returns
the Auxiliary Security Header - Security Control - Key Identifier Mode bits

Definition at line 202 of file lr-wpan-mac-header.cc.

References m_secctrlKeyIdMode.

◆ GetKeyIdSrc32()

uint32_t ns3::lrwpan::LrWpanMacHeader::GetKeyIdSrc32 ( ) const

Get the Auxiliary Security Header - Key Identifier - Key Source (2 Octets)

Returns
the Auxiliary Security Header - Key Identifier - Key Source (2 Octets)

Definition at line 214 of file lr-wpan-mac-header.cc.

References m_auxKeyIdKeySrc32.

Referenced by Serialize().

+ Here is the caller graph for this function:

◆ GetKeyIdSrc64()

uint64_t ns3::lrwpan::LrWpanMacHeader::GetKeyIdSrc64 ( ) const

Get the Auxiliary Security Header - Key Identifier - Key Source (4 Octets)

Returns
the Auxiliary Security Header - Key Identifier - Key Source (4 Octets)

Definition at line 220 of file lr-wpan-mac-header.cc.

References m_auxKeyIdKeySrc64.

Referenced by Serialize().

+ Here is the caller graph for this function:

◆ GetSecControl()

uint8_t ns3::lrwpan::LrWpanMacHeader::GetSecControl ( ) const

Get the Auxiliary Security Header - Security Control Octet.

Returns
the Auxiliary Security Header - Security Control Octet

Definition at line 178 of file lr-wpan-mac-header.cc.

References m_secctrlKeyIdMode, m_secctrlReserved, and m_secctrlSecLevel.

Referenced by Serialize().

+ Here is the caller graph for this function:

◆ GetSecCtrlReserved()

uint8_t ns3::lrwpan::LrWpanMacHeader::GetSecCtrlReserved ( ) const

Get the Auxiliary Security Header - Security Control - Reserved bits.

Returns
the Auxiliary Security Header - Security Control - Reserved bits

Definition at line 208 of file lr-wpan-mac-header.cc.

References m_secctrlReserved.

◆ GetSecLevel()

uint8_t ns3::lrwpan::LrWpanMacHeader::GetSecLevel ( ) const

Get the Auxiliary Security Header - Security Control - Security Level bits.

Returns
the Auxiliary Security Header - Security Control - Security Level bits

Definition at line 196 of file lr-wpan-mac-header.cc.

References m_secctrlSecLevel.

◆ GetSeqNum()

uint8_t ns3::lrwpan::LrWpanMacHeader::GetSeqNum ( ) const

Get the frame Sequence number.

Returns
the sequence number

Definition at line 136 of file lr-wpan-mac-header.cc.

References m_SeqNum.

Referenced by ns3::lrwpan::LrWpanMac::EnqueueInd(), ns3::lrwpan::LrWpanMac::PdDataIndication(), ns3::lrwpan::LrWpanMac::PrintTxQueue(), ns3::lrwpan::LrWpanMac::ReceiveBeacon(), ns3::lrwpan::LrWpanMac::RemovePendTxQElement(), and Serialize().

+ Here is the caller graph for this function:

◆ GetSerializedSize()

uint32_t ns3::lrwpan::LrWpanMacHeader::GetSerializedSize ( ) const
overridevirtual
Returns
the expected size of the header.

This method is used by Packet::AddHeader to store a header into the byte buffer of a packet. This method should return the number of bytes which are needed to store the full header data by Serialize.

Implements ns3::Header.

Definition at line 518 of file lr-wpan-mac-header.cc.

References EXTADDR, IMPLICIT, IsPanIdComp(), IsSecEnable(), LONGKEYSOURCE, m_fctrlDstAddrMode, m_fctrlSrcAddrMode, m_secctrlKeyIdMode, NOADDR, NOKEYSOURCE, SHORTADDR, and SHORTKEYSOURCE.

+ Here is the call graph for this function:

◆ GetShortDstAddr()

Mac16Address ns3::lrwpan::LrWpanMacHeader::GetShortDstAddr ( ) const

◆ GetShortSrcAddr()

Mac16Address ns3::lrwpan::LrWpanMacHeader::GetShortSrcAddr ( ) const

Get the Source Short address.

Returns
the Source Short address

Definition at line 166 of file lr-wpan-mac-header.cc.

References m_addrShortSrcAddr.

Referenced by ns3::lrwpan::LrWpanMac::PdDataConfirm(), ns3::lrwpan::LrWpanMac::PdDataIndication(), and ns3::lrwpan::LrWpanMac::ReceiveBeacon().

+ Here is the caller graph for this function:

◆ GetSrcAddrMode()

uint8_t ns3::lrwpan::LrWpanMacHeader::GetSrcAddrMode ( ) const

Get the Source Addressing Mode of Frame control field.

Returns
the Source Addressing Mode bits

Definition at line 130 of file lr-wpan-mac-header.cc.

References m_fctrlSrcAddrMode.

Referenced by ns3::AnimationInterface::LrWpanPhyTxBeginTrace(), ns3::lrwpan::LrWpanMac::PdDataConfirm(), ns3::lrwpan::LrWpanMac::PdDataIndication(), and ns3::lrwpan::LrWpanMac::ReceiveBeacon().

+ Here is the caller graph for this function:

◆ GetSrcPanId()

uint16_t ns3::lrwpan::LrWpanMacHeader::GetSrcPanId ( ) const

Get the Source PAN ID.

Returns
the Source PAN ID

Definition at line 160 of file lr-wpan-mac-header.cc.

References m_addrSrcPanId.

Referenced by ns3::lrwpan::LrWpanMac::McpsDataRequest(), ns3::lrwpan::LrWpanMac::PdDataConfirm(), ns3::lrwpan::LrWpanMac::PdDataIndication(), ns3::lrwpan::LrWpanMac::ReceiveBeacon(), and Serialize().

+ Here is the caller graph for this function:

◆ GetType()

LrWpanMacHeader::LrWpanMacType ns3::lrwpan::LrWpanMacHeader::GetType ( ) const

Get the header type.

Returns
the header type

Definition at line 53 of file lr-wpan-mac-header.cc.

References LRWPAN_MAC_ACKNOWLEDGMENT, LRWPAN_MAC_BEACON, LRWPAN_MAC_COMMAND, LRWPAN_MAC_DATA, LRWPAN_MAC_RESERVED, and m_fctrlFrmType.

Referenced by ns3::lrwpan::LrWpanMac::PdDataIndication().

+ Here is the caller graph for this function:

◆ GetTypeId()

TypeId ns3::lrwpan::LrWpanMacHeader::GetTypeId ( )
static

Get the type ID.

Returns
the object TypeId

Definition at line 434 of file lr-wpan-mac-header.cc.

References ns3::TypeId::AddDeprecatedName(), and ns3::TypeId::SetParent().

Referenced by GetInstanceTypeId().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ IsAcknowledgment()

bool ns3::lrwpan::LrWpanMacHeader::IsAcknowledgment ( ) const

Returns true if the header is an ack.

Returns
true if the header is an ack

Definition at line 244 of file lr-wpan-mac-header.cc.

References LRWPAN_MAC_ACKNOWLEDGMENT, and m_fctrlFrmType.

Referenced by LrWpanDataIfsTestCase::DataReceivedDev0(), ns3::lrwpan::LrWpanMac::PdDataConfirm(), and ns3::lrwpan::LrWpanMac::PdDataIndication().

+ Here is the caller graph for this function:

◆ IsAckReq()

bool ns3::lrwpan::LrWpanMacHeader::IsAckReq ( ) const

Check if Ack.

Request bit of Frame Control is enabled

Returns
true if Ack. Request bit is enabled

Definition at line 100 of file lr-wpan-mac-header.cc.

References m_fctrlAckReq.

Referenced by ns3::lrwpan::LrWpanMac::IsTxAckReq(), ns3::lrwpan::LrWpanMac::PdDataConfirm(), and ns3::lrwpan::LrWpanMac::PdDataIndication().

+ Here is the caller graph for this function:

◆ IsBeacon()

bool ns3::lrwpan::LrWpanMacHeader::IsBeacon ( ) const

Returns true if the header is a beacon.

Returns
true if the header is a beacon

Definition at line 232 of file lr-wpan-mac-header.cc.

References LRWPAN_MAC_BEACON, and m_fctrlFrmType.

Referenced by ns3::lrwpan::LrWpanMac::PdDataConfirm(), and ns3::lrwpan::LrWpanMac::PdDataIndication().

+ Here is the caller graph for this function:

◆ IsCommand()

bool ns3::lrwpan::LrWpanMacHeader::IsCommand ( ) const

Returns true if the header is a command.

Returns
true if the header is a command

Definition at line 250 of file lr-wpan-mac-header.cc.

References LRWPAN_MAC_COMMAND, and m_fctrlFrmType.

Referenced by ns3::lrwpan::LrWpanMac::PdDataConfirm(), ns3::lrwpan::LrWpanMac::PdDataIndication(), ns3::lrwpan::LrWpanMac::PrepareRetransmission(), ns3::lrwpan::LrWpanMac::PrintPendingTxQueue(), ns3::lrwpan::LrWpanMac::PrintTxQueue(), ns3::lrwpan::LrWpanMac::PurgeInd(), and ns3::lrwpan::LrWpanMac::SetLrWpanMacState().

+ Here is the caller graph for this function:

◆ IsData()

bool ns3::lrwpan::LrWpanMacHeader::IsData ( ) const

Returns true if the header is a data.

Returns
true if the header is a data

Definition at line 238 of file lr-wpan-mac-header.cc.

References LRWPAN_MAC_DATA, and m_fctrlFrmType.

Referenced by ns3::lrwpan::LrWpanMac::PdDataIndication(), ns3::lrwpan::LrWpanMac::PrintPendingTxQueue(), ns3::lrwpan::LrWpanMac::PrintTxQueue(), ns3::lrwpan::LrWpanMac::PurgeInd(), and ns3::lrwpan::LrWpanMac::SetLrWpanMacState().

+ Here is the caller graph for this function:

◆ IsFrmPend()

bool ns3::lrwpan::LrWpanMacHeader::IsFrmPend ( ) const

Check if Frame Pending bit of Frame Control is enabled.

Returns
true if Frame Pending bit is enabled

Definition at line 94 of file lr-wpan-mac-header.cc.

References m_fctrlFrmPending.

◆ IsPanIdComp()

bool ns3::lrwpan::LrWpanMacHeader::IsPanIdComp ( ) const

Check if PAN ID Compression bit of Frame Control is enabled.

Returns
true if PAN ID Compression bit is enabled

Definition at line 106 of file lr-wpan-mac-header.cc.

References m_fctrlPanIdComp.

Referenced by Deserialize(), GetSerializedSize(), and Serialize().

+ Here is the caller graph for this function:

◆ IsSecEnable()

bool ns3::lrwpan::LrWpanMacHeader::IsSecEnable ( ) const

Check if Security Enabled bit of Frame Control is enabled.

Returns
true if Security Enabled bit is enabled

Definition at line 88 of file lr-wpan-mac-header.cc.

References m_fctrlSecU.

Referenced by Deserialize(), GetSerializedSize(), Print(), and Serialize().

+ Here is the caller graph for this function:

◆ Print()

void ns3::lrwpan::LrWpanMacHeader::Print ( std::ostream & os) const
overridevirtual
Parameters
osoutput stream This method is used by Packet::Print to print the content of a header as ascii data to a c++ output stream. Although the header is free to format its output as it wishes, it is recommended to follow a few rules to integrate with the packet pretty printer: start with flags, small field values located between a pair of parens. Values should be separated by whitespace. Follow the parens with the important fields, separated by whitespace. i.e.: (field1 val1 field2 val2 field3 val3) field4 val4 field5 val5

Implements ns3::Header.

Definition at line 451 of file lr-wpan-mac-header.cc.

References EXTADDR, IMPLICIT, IsSecEnable(), LONGKEYSOURCE, m_addrDstPanId, m_addrExtDstAddr, m_addrShortDstAddr, m_addrShortSrcAddr, m_addrSrcPanId, m_auxFrmCntr, m_auxKeyIdKeyIndex, m_auxKeyIdKeySrc32, m_auxKeyIdKeySrc64, m_fctrlAckReq, m_fctrlDstAddrMode, m_fctrlFrmPending, m_fctrlFrmType, m_fctrlFrmVer, m_fctrlPanIdComp, m_fctrlSecU, m_fctrlSrcAddrMode, m_secctrlKeyIdMode, m_secctrlSecLevel, m_SeqNum, NOADDR, NOKEYSOURCE, SHORTADDR, and SHORTKEYSOURCE.

Referenced by LrWpanPacketTestCase::DoRun().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ Serialize()

void ns3::lrwpan::LrWpanMacHeader::Serialize ( Buffer::Iterator start) const
overridevirtual
Parameters
startan iterator which points to where the header should be written.

This method is used by Packet::AddHeader to store a header into the byte buffer of a packet. The data written is expected to match bit-for-bit the representation of this header in a real network.

Implements ns3::Header.

Definition at line 596 of file lr-wpan-mac-header.cc.

References EXTADDR, GetDstPanId(), GetFrameControl(), GetFrmCounter(), GetKeyIdIndex(), GetKeyIdSrc32(), GetKeyIdSrc64(), GetSecControl(), GetSeqNum(), GetSrcPanId(), IMPLICIT, IsPanIdComp(), IsSecEnable(), LONGKEYSOURCE, m_addrExtDstAddr, m_addrExtSrcAddr, m_addrShortDstAddr, m_addrShortSrcAddr, m_fctrlDstAddrMode, m_fctrlSrcAddrMode, m_secctrlKeyIdMode, NOADDR, NOKEYSOURCE, SHORTADDR, SHORTKEYSOURCE, ns3::Buffer::Iterator::WriteHtolsbU16(), ns3::Buffer::Iterator::WriteHtolsbU32(), ns3::Buffer::Iterator::WriteHtolsbU64(), ns3::WriteTo(), and ns3::Buffer::Iterator::WriteU8().

+ Here is the call graph for this function:

◆ SetAckReq()

void ns3::lrwpan::LrWpanMacHeader::SetAckReq ( )

Set the Frame Control field "Ack. Request" bit to true.

Definition at line 300 of file lr-wpan-mac-header.cc.

References m_fctrlAckReq.

Referenced by ns3::lrwpan::LrWpanMac::McpsDataRequest(), ns3::lrwpan::LrWpanMac::MlmeAssociateResponse(), ns3::lrwpan::LrWpanMac::MlmeOrphanResponse(), ns3::lrwpan::LrWpanMac::SendAssocRequestCommand(), and ns3::lrwpan::LrWpanMac::SendDataRequestCommand().

+ Here is the caller graph for this function:

◆ SetDstAddrFields() [1/2]

void ns3::lrwpan::LrWpanMacHeader::SetDstAddrFields ( uint16_t panId,
Mac16Address addr )

Set Destination address fields.

Parameters
panIddestination PAN ID
addrdestination address (16 bit)

Definition at line 368 of file lr-wpan-mac-header.cc.

References m_addrDstPanId, and m_addrShortDstAddr.

Referenced by ns3::lrwpan::LrWpanMac::McpsDataRequest(), ns3::lrwpan::LrWpanMac::MlmeAssociateResponse(), ns3::lrwpan::LrWpanMac::MlmeOrphanResponse(), ns3::lrwpan::LrWpanMac::SendAssocRequestCommand(), ns3::lrwpan::LrWpanMac::SendBeaconRequestCommand(), ns3::lrwpan::LrWpanMac::SendDataRequestCommand(), ns3::lrwpan::LrWpanMac::SendOneBeacon(), and ns3::lrwpan::LrWpanMac::SendOrphanNotificationCommand().

+ Here is the caller graph for this function:

◆ SetDstAddrFields() [2/2]

void ns3::lrwpan::LrWpanMacHeader::SetDstAddrFields ( uint16_t panId,
Mac64Address addr )

Set Destination address fields.

Parameters
panIddestination PAN ID
addrdestination address (64 bit)

Definition at line 375 of file lr-wpan-mac-header.cc.

References m_addrDstPanId, and m_addrExtDstAddr.

◆ SetDstAddrMode()

void ns3::lrwpan::LrWpanMacHeader::SetDstAddrMode ( uint8_t addrMode)

◆ SetFrameControl()

void ns3::lrwpan::LrWpanMacHeader::SetFrameControl ( uint16_t frameControl)

Set the whole Frame Control field.

Parameters
frameControlthe Frame Control field

Definition at line 262 of file lr-wpan-mac-header.cc.

References m_fctrlAckReq, m_fctrlDstAddrMode, m_fctrlFrmPending, m_fctrlFrmType, m_fctrlFrmVer, m_fctrlPanIdComp, m_fctrlReserved, m_fctrlSecU, and m_fctrlSrcAddrMode.

Referenced by Deserialize().

+ Here is the caller graph for this function:

◆ SetFrameVer()

void ns3::lrwpan::LrWpanMacHeader::SetFrameVer ( uint8_t ver)

Set the Frame version.

Parameters
verframe version

Definition at line 336 of file lr-wpan-mac-header.cc.

References m_fctrlFrmVer.

Referenced by LrWpanMacHeader(), LrWpanMacHeader(), and ns3::lrwpan::LrWpanMac::MlmeOrphanResponse().

+ Here is the caller graph for this function:

◆ SetFrmCounter()

void ns3::lrwpan::LrWpanMacHeader::SetFrmCounter ( uint32_t frmCntr)

Set the auxiliary security header "Frame Counter" octet.

Parameters
frmCntrthe "Frame Counter" octet

Definition at line 390 of file lr-wpan-mac-header.cc.

References m_auxFrmCntr.

Referenced by Deserialize().

+ Here is the caller graph for this function:

◆ SetFrmCtrlRes()

void ns3::lrwpan::LrWpanMacHeader::SetFrmCtrlRes ( uint8_t res)

Set the Frame Control field "Reserved" bits.

Parameters
resreserved bits

Definition at line 324 of file lr-wpan-mac-header.cc.

References m_fctrlReserved.

Referenced by LrWpanMacHeader(), and LrWpanMacHeader().

+ Here is the caller graph for this function:

◆ SetFrmPend()

void ns3::lrwpan::LrWpanMacHeader::SetFrmPend ( )

Set the Frame Control field "Frame Pending" bit to true.

Definition at line 288 of file lr-wpan-mac-header.cc.

References m_fctrlFrmPending.

◆ SetKeyId() [1/3]

void ns3::lrwpan::LrWpanMacHeader::SetKeyId ( uint32_t keySrc,
uint8_t keyIndex )

Set the Key Index and originator.

Parameters
keySrcthe originator of a group key
keyIndexthe Key index

Definition at line 420 of file lr-wpan-mac-header.cc.

References m_auxKeyIdKeyIndex, and m_auxKeyIdKeySrc32.

◆ SetKeyId() [2/3]

void ns3::lrwpan::LrWpanMacHeader::SetKeyId ( uint64_t keySrc,
uint8_t keyIndex )

Set the Key Index and originator.

Parameters
keySrcthe originator of a group key
keyIndexthe Key index

Definition at line 427 of file lr-wpan-mac-header.cc.

References m_auxKeyIdKeyIndex, and m_auxKeyIdKeySrc64.

◆ SetKeyId() [3/3]

void ns3::lrwpan::LrWpanMacHeader::SetKeyId ( uint8_t keyIndex)

Set the Key Index.

Parameters
keyIndexthe Key index

Definition at line 414 of file lr-wpan-mac-header.cc.

References m_auxKeyIdKeyIndex.

Referenced by Deserialize().

+ Here is the caller graph for this function:

◆ SetKeyIdMode()

void ns3::lrwpan::LrWpanMacHeader::SetKeyIdMode ( uint8_t keyIdMode)

Set the Security Control field "Key Identifier Mode" bits (2 bits)

Parameters
keyIdModethe "Key Identifier Mode" bits

Definition at line 402 of file lr-wpan-mac-header.cc.

References m_secctrlKeyIdMode.

◆ SetNoAckReq()

void ns3::lrwpan::LrWpanMacHeader::SetNoAckReq ( )

Set the Frame Control field "Ack. Request" bit to false.

Definition at line 306 of file lr-wpan-mac-header.cc.

References m_fctrlAckReq.

Referenced by LrWpanMacHeader(), LrWpanMacHeader(), ns3::lrwpan::LrWpanMac::McpsDataRequest(), ns3::lrwpan::LrWpanMac::SendBeaconRequestCommand(), ns3::lrwpan::LrWpanMac::SendOneBeacon(), and ns3::lrwpan::LrWpanMac::SendOrphanNotificationCommand().

+ Here is the caller graph for this function:

◆ SetNoFrmPend()

void ns3::lrwpan::LrWpanMacHeader::SetNoFrmPend ( )

Set the Frame Control field "Frame Pending" bit to false.

Definition at line 294 of file lr-wpan-mac-header.cc.

References m_fctrlFrmPending.

Referenced by LrWpanMacHeader(), and LrWpanMacHeader().

+ Here is the caller graph for this function:

◆ SetNoPanIdComp()

void ns3::lrwpan::LrWpanMacHeader::SetNoPanIdComp ( )

Set the Frame Control field "PAN ID Compression" bit to false.

Definition at line 318 of file lr-wpan-mac-header.cc.

References m_fctrlPanIdComp.

Referenced by LrWpanMacHeader(), LrWpanMacHeader(), LrWpanPacketTestCase::DoRun(), ns3::lrwpan::LrWpanMac::McpsDataRequest(), and ns3::lrwpan::LrWpanMac::SendBeaconRequestCommand().

+ Here is the caller graph for this function:

◆ SetPanIdComp()

void ns3::lrwpan::LrWpanMacHeader::SetPanIdComp ( )

Set the Frame Control field "PAN ID Compression" bit to true.

Definition at line 312 of file lr-wpan-mac-header.cc.

References m_fctrlPanIdComp.

Referenced by ns3::lrwpan::LrWpanMac::McpsDataRequest(), ns3::lrwpan::LrWpanMac::MlmeAssociateResponse(), ns3::lrwpan::LrWpanMac::MlmeOrphanResponse(), and ns3::lrwpan::LrWpanMac::SendOrphanNotificationCommand().

+ Here is the caller graph for this function:

◆ SetSecControl()

void ns3::lrwpan::LrWpanMacHeader::SetSecControl ( uint8_t secLevel)

Set the auxiliary security header "Security Control" octet.

Parameters
secLevelthe "Security Control" octet

Definition at line 382 of file lr-wpan-mac-header.cc.

References m_secctrlKeyIdMode, m_secctrlReserved, and m_secctrlSecLevel.

Referenced by Deserialize().

+ Here is the caller graph for this function:

◆ SetSecCtrlReserved()

void ns3::lrwpan::LrWpanMacHeader::SetSecCtrlReserved ( uint8_t res)

Set the Security Control field "Reserved" bits (3 bits)

Parameters
resthe "Reserved" bits

Definition at line 408 of file lr-wpan-mac-header.cc.

References m_secctrlReserved.

◆ SetSecDisable()

void ns3::lrwpan::LrWpanMacHeader::SetSecDisable ( )

◆ SetSecEnable()

void ns3::lrwpan::LrWpanMacHeader::SetSecEnable ( )

Set the Frame Control field "Security Enabled" bit to true.

Definition at line 276 of file lr-wpan-mac-header.cc.

References m_fctrlSecU.

◆ SetSecLevel()

void ns3::lrwpan::LrWpanMacHeader::SetSecLevel ( uint8_t secLevel)

Set the Security Control field "Security Level" bits (3 bits)

Parameters
secLevelthe "Security Level" bits

Definition at line 396 of file lr-wpan-mac-header.cc.

References m_secctrlSecLevel.

◆ SetSeqNum()

void ns3::lrwpan::LrWpanMacHeader::SetSeqNum ( uint8_t seqNum)

Set the Sequence number.

Parameters
seqNumsequence number

Definition at line 348 of file lr-wpan-mac-header.cc.

References m_SeqNum.

Referenced by LrWpanMacHeader(), and Deserialize().

+ Here is the caller graph for this function:

◆ SetSrcAddrFields() [1/2]

void ns3::lrwpan::LrWpanMacHeader::SetSrcAddrFields ( uint16_t panId,
Mac16Address addr )

Set Source address fields.

Parameters
panIdsource PAN ID
addrsource address (16 bit)

Definition at line 354 of file lr-wpan-mac-header.cc.

References m_addrShortSrcAddr, and m_addrSrcPanId.

Referenced by LrWpanPacketTestCase::DoRun(), ns3::lrwpan::LrWpanMac::McpsDataRequest(), ns3::lrwpan::LrWpanMac::MlmeAssociateResponse(), ns3::lrwpan::LrWpanMac::MlmeOrphanResponse(), ns3::lrwpan::LrWpanMac::SendAssocRequestCommand(), ns3::lrwpan::LrWpanMac::SendDataRequestCommand(), ns3::lrwpan::LrWpanMac::SendOneBeacon(), and ns3::lrwpan::LrWpanMac::SendOrphanNotificationCommand().

+ Here is the caller graph for this function:

◆ SetSrcAddrFields() [2/2]

void ns3::lrwpan::LrWpanMacHeader::SetSrcAddrFields ( uint16_t panId,
Mac64Address addr )

Set Source address fields.

Parameters
panIdsource PAN ID
addrsource address (64 bit)

Definition at line 361 of file lr-wpan-mac-header.cc.

References m_addrExtSrcAddr, and m_addrSrcPanId.

◆ SetSrcAddrMode()

void ns3::lrwpan::LrWpanMacHeader::SetSrcAddrMode ( uint8_t addrMode)

◆ SetType()

void ns3::lrwpan::LrWpanMacHeader::SetType ( LrWpanMacType wpanMacType)

Set the Frame Control field "Frame Type" bits.

Parameters
wpanMacTypethe frame type

Definition at line 256 of file lr-wpan-mac-header.cc.

References m_fctrlFrmType.

Referenced by LrWpanMacHeader(), and LrWpanMacHeader().

+ Here is the caller graph for this function:

Member Data Documentation

◆ [union]

Auxiliary security header.

◆ m_addrDstPanId

uint16_t ns3::lrwpan::LrWpanMacHeader::m_addrDstPanId
private

Dst PAN id (0 or 2 Octets)

Definition at line 411 of file lr-wpan-mac-header.h.

Referenced by Deserialize(), GetDstPanId(), Print(), SetDstAddrFields(), and SetDstAddrFields().

◆ m_addrExtDstAddr

Mac64Address ns3::lrwpan::LrWpanMacHeader::m_addrExtDstAddr
private

Dst Ext addr (0 or 8 Octets)

Definition at line 413 of file lr-wpan-mac-header.h.

Referenced by Deserialize(), GetExtDstAddr(), Print(), Serialize(), and SetDstAddrFields().

◆ m_addrExtSrcAddr

Mac64Address ns3::lrwpan::LrWpanMacHeader::m_addrExtSrcAddr
private

Src Ext addr (0 or 8 Octets)

Definition at line 416 of file lr-wpan-mac-header.h.

Referenced by Deserialize(), GetExtSrcAddr(), Serialize(), and SetSrcAddrFields().

◆ m_addrShortDstAddr

Mac16Address ns3::lrwpan::LrWpanMacHeader::m_addrShortDstAddr
private

Dst Short addr (0 or 2 Octets)

Definition at line 412 of file lr-wpan-mac-header.h.

Referenced by Deserialize(), GetShortDstAddr(), Print(), Serialize(), and SetDstAddrFields().

◆ m_addrShortSrcAddr

Mac16Address ns3::lrwpan::LrWpanMacHeader::m_addrShortSrcAddr
private

Src Short addr (0 or 2 Octets)

Definition at line 415 of file lr-wpan-mac-header.h.

Referenced by Deserialize(), GetShortSrcAddr(), Print(), Serialize(), and SetSrcAddrFields().

◆ m_addrSrcPanId

uint16_t ns3::lrwpan::LrWpanMacHeader::m_addrSrcPanId
private

Src PAN id (0 or 2 Octets)

Definition at line 414 of file lr-wpan-mac-header.h.

Referenced by Deserialize(), GetSrcPanId(), Print(), SetSrcAddrFields(), and SetSrcAddrFields().

◆ m_auxFrmCntr

uint32_t ns3::lrwpan::LrWpanMacHeader::m_auxFrmCntr
private

Auxiliary security header - Frame Counter (4 Octets)

Definition at line 420 of file lr-wpan-mac-header.h.

Referenced by GetFrmCounter(), Print(), and SetFrmCounter().

◆ m_auxKeyIdKeyIndex

uint8_t ns3::lrwpan::LrWpanMacHeader::m_auxKeyIdKeyIndex
private

Auxiliary security header - Key Index (1 Octet)

Definition at line 439 of file lr-wpan-mac-header.h.

Referenced by GetKeyIdIndex(), Print(), SetKeyId(), SetKeyId(), and SetKeyId().

◆ m_auxKeyIdKeySrc32

uint32_t ns3::lrwpan::LrWpanMacHeader::m_auxKeyIdKeySrc32

Auxiliary security header - Key Source (4 Octets)

Definition at line 435 of file lr-wpan-mac-header.h.

Referenced by GetKeyIdSrc32(), Print(), and SetKeyId().

◆ m_auxKeyIdKeySrc64

uint64_t ns3::lrwpan::LrWpanMacHeader::m_auxKeyIdKeySrc64

Auxiliary security header - Key Source (8 Octets)

Definition at line 436 of file lr-wpan-mac-header.h.

Referenced by GetKeyIdSrc64(), Print(), and SetKeyId().

◆ m_fctrlAckReq

uint8_t ns3::lrwpan::LrWpanMacHeader::m_fctrlAckReq
private

Frame Control field Bit 5.

Definition at line 397 of file lr-wpan-mac-header.h.

Referenced by GetFrameControl(), IsAckReq(), Print(), SetAckReq(), SetFrameControl(), and SetNoAckReq().

◆ m_fctrlDstAddrMode

uint8_t ns3::lrwpan::LrWpanMacHeader::m_fctrlDstAddrMode
private

Frame Control field Bit 10-11 = 0 - No DstAddr, 2 - ShtDstAddr, 3 - ExtDstAddr.

Definition at line 401 of file lr-wpan-mac-header.h.

Referenced by Deserialize(), GetDstAddrMode(), GetFrameControl(), GetSerializedSize(), Print(), Serialize(), SetDstAddrMode(), and SetFrameControl().

◆ m_fctrlFrmPending

uint8_t ns3::lrwpan::LrWpanMacHeader::m_fctrlFrmPending
private

Frame Control field Bit 4.

Definition at line 396 of file lr-wpan-mac-header.h.

Referenced by GetFrameControl(), IsFrmPend(), Print(), SetFrameControl(), SetFrmPend(), and SetNoFrmPend().

◆ m_fctrlFrmType

uint8_t ns3::lrwpan::LrWpanMacHeader::m_fctrlFrmType
private

Frame Control field Bit 0-2 = 0 - Beacon, 1 - Data, 2 - Ack, 3 - Command.

Definition at line 392 of file lr-wpan-mac-header.h.

Referenced by GetFrameControl(), GetType(), IsAcknowledgment(), IsBeacon(), IsCommand(), IsData(), Print(), SetFrameControl(), and SetType().

◆ m_fctrlFrmVer

uint8_t ns3::lrwpan::LrWpanMacHeader::m_fctrlFrmVer
private

Frame Control field Bit 12-13.

Definition at line 403 of file lr-wpan-mac-header.h.

Referenced by GetFrameControl(), GetFrameVer(), Print(), SetFrameControl(), and SetFrameVer().

◆ m_fctrlPanIdComp

uint8_t ns3::lrwpan::LrWpanMacHeader::m_fctrlPanIdComp
private

Frame Control field Bit 6 = 0 - no compression, 1 - using only DstPanId for both Src and DstPanId.

Definition at line 398 of file lr-wpan-mac-header.h.

Referenced by GetFrameControl(), IsPanIdComp(), Print(), SetFrameControl(), SetNoPanIdComp(), and SetPanIdComp().

◆ m_fctrlReserved

uint8_t ns3::lrwpan::LrWpanMacHeader::m_fctrlReserved
private

Frame Control field Bit 7-9.

Definition at line 400 of file lr-wpan-mac-header.h.

Referenced by GetFrameControl(), GetFrmCtrlRes(), SetFrameControl(), and SetFrmCtrlRes().

◆ m_fctrlSecU

uint8_t ns3::lrwpan::LrWpanMacHeader::m_fctrlSecU
private

Frame Control field Bit 3 = 0 - no AuxSecHdr , 1 - security enabled AuxSecHdr present.

Definition at line 394 of file lr-wpan-mac-header.h.

Referenced by GetFrameControl(), IsSecEnable(), Print(), SetFrameControl(), SetSecDisable(), and SetSecEnable().

◆ m_fctrlSrcAddrMode

uint8_t ns3::lrwpan::LrWpanMacHeader::m_fctrlSrcAddrMode
private

Frame Control field Bit 14-15 = 0 - No SrcAddr, 2 - ShtSrcAddr, 3 - ExtSrcAddr.

Definition at line 404 of file lr-wpan-mac-header.h.

Referenced by Deserialize(), GetFrameControl(), GetSerializedSize(), GetSrcAddrMode(), Print(), Serialize(), SetFrameControl(), and SetSrcAddrMode().

◆ m_secctrlKeyIdMode

uint8_t ns3::lrwpan::LrWpanMacHeader::m_secctrlKeyIdMode
private

Auxiliary security header - Security Control field - Bit 3-4 will indicate size of Key Id.

Definition at line 424 of file lr-wpan-mac-header.h.

Referenced by Deserialize(), GetKeyIdMode(), GetSecControl(), GetSerializedSize(), Print(), Serialize(), SetKeyIdMode(), and SetSecControl().

◆ m_secctrlReserved

uint8_t ns3::lrwpan::LrWpanMacHeader::m_secctrlReserved
private

Auxiliary security header - Security Control field - Bit 5-7.

Definition at line 432 of file lr-wpan-mac-header.h.

Referenced by GetSecControl(), GetSecCtrlReserved(), SetSecControl(), and SetSecCtrlReserved().

◆ m_secctrlSecLevel

uint8_t ns3::lrwpan::LrWpanMacHeader::m_secctrlSecLevel
private

Auxiliary security header - Security Control field - Bit 0-2.

Definition at line 423 of file lr-wpan-mac-header.h.

Referenced by GetSecControl(), GetSecLevel(), Print(), SetSecControl(), and SetSecLevel().

◆ m_SeqNum

uint8_t ns3::lrwpan::LrWpanMacHeader::m_SeqNum
private

Sequence Number (1 Octet)

Definition at line 408 of file lr-wpan-mac-header.h.

Referenced by GetSeqNum(), Print(), and SetSeqNum().


The documentation for this class was generated from the following files: