20#ifndef LR_WPAN_MAC_PL_HEADERS_H
21#define LR_WPAN_MAC_PL_HEADERS_H
25#include <ns3/header.h>
26#include <ns3/mac16-address.h>
27#include <ns3/mac64-address.h>
50 void Print(std::ostream& os)
const override;
152 void Print(std::ostream& os)
const override;
iterator in a Buffer instance
Represent the Capability Information Field.
Implements the header for the MAC payload command frame according to the IEEE 802....
void SetPage(uint8_t page)
Set the logical channel page number.
AssocStatus
Association Status Field values.
@ FULL_CAPACITY
PAN at capacity.
@ ACCESS_DENIED
PAN access denied.
@ SUCCESSFUL
Association successful.
CapabilityField GetCapabilityField() const
Get the Capability Information Field from the command payload header.
void SetPanId(uint16_t id)
Get the PAN identifier.
Mac16Address GetShortAddr() const
Get the Short address assigned by the coordinator (Association Response and Coordinator Realigment co...
void SetCapabilityField(CapabilityField cap)
Set the Capability Information Field to the command payload header (Association Request Command).
uint8_t GetChannel() const
Get the logical channel number.
uint16_t m_panid
The PAN identifier (Coordinator realigment command)
AssocStatus GetAssociationStatus() const
Get the status resulting from an association request (Association Response Command).
CapabilityField m_capabilityInfo
Capability Information Field (Association Request Command)
MacCommand m_cmdFrameId
The command Frame Identifier (Used by all commands)
void SetAssociationStatus(AssocStatus status)
Set status resulting from the association attempt (Association Response Command).
MacCommand GetCommandFrameType() const
Get the command frame type ID.
MacCommand
The MAC command frames.
@ ASSOCIATION_RESP
Association response (RFD true: Rx)
@ BEACON_REQ
Beacon Request (RFD true: none )
@ DATA_REQ
Data Request (RFD true: Tx)
@ ORPHAN_NOTIF
Orphan Notification (RFD true: Tx)
@ ASSOCIATION_REQ
Association request (RFD true: Tx)
@ DISASSOCIATION_NOTIF
Disassociation notification (RFD true: TX, Rx)
@ COOR_REALIGN
Coordinator Realignment (RFD true: Rx)
@ PANID_CONFLICT
Pan ID conflict notification (RFD true: Tx)
@ GTS_REQ
GTS Request (RFD true: none)
Mac16Address GetCoordShortAddr() const
Get the coordinator short address.
void Serialize(Buffer::Iterator start) const override
uint16_t GetPanId() const
Get the PAN identifier.
void SetCommandFrameType(MacCommand macCmd)
Set the command frame type.
void SetCoordShortAddr(Mac16Address addr)
Set the coordinator short address (16 bit address).
static TypeId GetTypeId()
Get the type ID.
Mac16Address m_coordShortAddr
The coordinator short address (Coordinator realigment command)
TypeId GetInstanceTypeId() const override
Get the most derived TypeId for this Object.
uint8_t m_logCh
The channel number (Coordinator realigment command)
uint8_t m_logChPage
The channel page number (Coordinator realigment command)
Mac16Address m_shortAddr
Contains the short address assigned by the coordinator.
AssocStatus m_assocStatus
Association Status (Association Response Command)
void SetShortAddr(Mac16Address shortAddr)
Set the Short Address Assigned by the coordinator (Association Response and Coordinator Realigment Co...
uint32_t GetSerializedSize() const override
void Print(std::ostream &os) const override
void SetChannel(uint8_t channel)
Set the logical channel number.
uint8_t GetPage() const
Get the logical channel page number.
uint32_t Deserialize(Buffer::Iterator start) override
Represent the GTS information fields.
This class can contain 16 bit addresses.
Represent the Pending Address Specification field.
Represent the Superframe Specification information field.
a unique identifier for an interface.
Every class exported by the ns3 library is enclosed in the ns3 namespace.