22 #include <ns3/address-utils.h>
23 #include <ns3/simulator.h>
43 .SetGroupName(
"LrWpan")
150 .SetGroupName(
"LrWpan")
278 os <<
"| MAC Command Frame ID | = " <<
static_cast<uint32_t
>(
m_cmdFrameId);
291 os <<
"| Assigned Short Address | = " <<
m_shortAddr
305 os <<
"| PAN identifier| = " <<
m_panid
307 <<
"| Channel Num.| = " <<
static_cast<uint32_t
>(
m_logCh)
309 <<
"| Page Num.| = " <<
static_cast<uint32_t
>(
m_logChPage);
iterator in a Buffer instance
void WriteU8(uint8_t data)
void WriteU16(uint16_t data)
uint32_t GetDistanceFrom(const Iterator &o) const
Represent the Capability Information Field.
bool IsDeviceTypeFfd() const
True if the device type is a Full Functional Device (FFD) false if is a Reduced Functional Device (RF...
bool IsSecurityCapability() const
True if the device is capable of sending and receiving cryptographically protected MAC frames.
bool IsPowSrcAvailable() const
True if the device is receiving power from alternating current mains.
bool IsReceiverOnWhenIdle() const
True if the device does not disable its receiver to conserve power during idle periods.
bool IsShortAddrAllocOn() const
True if the device wishes the coordinator to allocate a short address as result of the association pr...
Implements the header for the MAC payload command frame according to the IEEE 802....
uint8_t m_assocStatus
Association Status (Association Response Command)
void SetPage(uint8_t page)
Set the logical channel page number.
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...
uint8_t GetChannel() const
Get the logical channel number.
uint16_t m_panid
The PAN identifier (Coordinator realigment command)
MacCommand m_cmdFrameId
The command Frame Identifier (Used by all commands)
uint8_t m_capabilityInfo
Capability Information Field (Association Request 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).
uint8_t GetCapabilityField() const
Get the Capability Information Field from the command payload header.
static TypeId GetTypeId()
Get the type ID.
void SetAssociationStatus(uint8_t status)
Set status resulting from the association attempt (Association Response Command).
Mac16Address m_coordShortAddr
The coordinator short address (Coordinator realigment command)
void SetCapabilityField(uint8_t cap)
Set the Capability Information Field to the command payload header (Association Request 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 GetAssociationStatus() const
Get the status resulting from an association request (Association Response Command).
uint8_t m_logChPage
The channel page number (Coordinator realigment command)
Mac16Address m_shortAddr
Contains the short address assigned by the coordinator (Association Response and Coordinator Realiagm...
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.
Represent the GTS information fields.
Buffer::Iterator Serialize(Buffer::Iterator i) const
Serialize the entire GTS fields.
uint32_t GetSerializedSize() const
Get the size of the serialized GTS fields.
Buffer::Iterator Deserialize(Buffer::Iterator i)
Deserialize the entire GTS fields.
uint8_t GetGtsSpecField() const
Get the GTS Specification Field from the GTS Fields.
This class can contain 16 bit addresses.
Represent the Pending Address Specification field.
Buffer::Iterator Deserialize(Buffer::Iterator i)
Deserialize the all the Pending Address Fields.
uint32_t GetSerializedSize() const
Get the size of the serialized Pending Address Fields.
uint8_t GetPndAddrSpecField() const
Get the whole Pending Address Specification Field from the Pending Address Fields.
Buffer::Iterator Serialize(Buffer::Iterator i) const
Serialize the entire Pending Address Fields.
a unique identifier for an interface.
TypeId SetParent(TypeId tid)
Set the parent TypeId.
#define NS_ASSERT(condition)
At runtime, in debugging builds, if this condition is not true, the program prints the source file,...
#define NS_OBJECT_ENSURE_REGISTERED(type)
Register an Object subclass with the TypeId system.
std::string page
start a separate page
Every class exported by the ns3 library is enclosed in the ns3 namespace.
void WriteTo(Buffer::Iterator &i, Ipv4Address ad)
Write an Ipv4Address to a Buffer.
void ReadFrom(Buffer::Iterator &i, Ipv4Address &ad)
Read an Ipv4Address from a Buffer.