A Discrete-Event Network Simulator
API
ns3::PendingAddrFields Class Reference

Represent the Pending Address Specification field. More...

#include "lr-wpan-fields.h"

+ Collaboration diagram for ns3::PendingAddrFields:

Public Member Functions

 PendingAddrFields ()
 
void AddAddress (Mac16Address shortAddr)
 Add a short Pending Address to the Address List. More...
 
void AddAddress (Mac64Address extAddr)
 Add a extended Pending Address to the Address List. More...
 
Buffer::Iterator Deserialize (Buffer::Iterator i)
 Deserialize the all the Pending Address Fields. More...
 
uint8_t GetNumExtAddr (void) const
 Get the number of Extended Pending Address indicated in the Pending Address Specification Field. More...
 
uint8_t GetNumShortAddr (void) const
 Get the number of Short Pending Address indicated in the Pending Address Specification Field. More...
 
uint8_t GetPndAddrSpecField (void) const
 Get the whole Pending Address Specification Field from the Pending Address Fields. More...
 
uint32_t GetSerializedSize (void) const
 Get the size of the serialized Pending Address Fields. More...
 
bool SearchAddress (Mac16Address shortAddr)
 Search for the short Pending Address in the Address List. More...
 
bool SearchAddress (Mac64Address extAddr)
 Search for the extended Pending Address in the Address List. More...
 
Buffer::Iterator Serialize (Buffer::Iterator i) const
 Serialize the entire Pending Address Fields. More...
 
void SetPndAddrSpecField (uint8_t pndAddrSpecField)
 Set the whole Pending Address Specification field. More...
 

Private Attributes

std::array< Mac64Address, 7 > m_extAddrList
 Pending Extended Address List. More...
 
uint8_t m_pndAddrSpecNumExtAddr
 Pending Address Specification field Number of Extended Address (Bits 4-6) Pending Address Specification field Reserved (Not Necessary) (Bit 7) More...
 
uint8_t m_pndAddrSpecNumShortAddr
 Pending Address Specification field Number of Short Address (Bits 0-2) Pending Address Specification field Reserved (Not Necessary)(Bit 3) More...
 
std::array< Mac16Address, 7 > m_shortAddrList
 Pending Short Address List. More...
 

Detailed Description

Represent the Pending Address Specification field.

See IEEE 802.15.4-2011 Section 5.2.2.1.6. Figure 45

Definition at line 257 of file lr-wpan-fields.h.

Constructor & Destructor Documentation

◆ PendingAddrFields()

ns3::PendingAddrFields::PendingAddrFields ( )

Definition at line 319 of file lr-wpan-fields.cc.

References m_pndAddrSpecNumExtAddr, and m_pndAddrSpecNumShortAddr.

Member Function Documentation

◆ AddAddress() [1/2]

void ns3::PendingAddrFields::AddAddress ( Mac16Address  shortAddr)

Add a short Pending Address to the Address List.

Parameters
shortAddrThe extended Pending Address List.

Definition at line 353 of file lr-wpan-fields.cc.

References m_pndAddrSpecNumExtAddr, m_pndAddrSpecNumShortAddr, and m_shortAddrList.

◆ AddAddress() [2/2]

void ns3::PendingAddrFields::AddAddress ( Mac64Address  extAddr)

Add a extended Pending Address to the Address List.

Parameters
extAddrThe extended Pending Address List.

Definition at line 369 of file lr-wpan-fields.cc.

References m_extAddrList, m_pndAddrSpecNumExtAddr, and m_pndAddrSpecNumShortAddr.

◆ Deserialize()

Buffer::Iterator ns3::PendingAddrFields::Deserialize ( Buffer::Iterator  i)

Deserialize the all the Pending Address Fields.

Parameters
ian iterator which points to where the Pending Address Fields should be read.
Returns
an iterator.

Definition at line 455 of file lr-wpan-fields.cc.

References bianchi11ax::k, m_extAddrList, m_pndAddrSpecNumExtAddr, m_pndAddrSpecNumShortAddr, m_shortAddrList, ns3::ReadFrom(), ns3::Buffer::Iterator::ReadU8(), and SetPndAddrSpecField().

Referenced by ns3::BeaconPayloadHeader::Deserialize().

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

◆ GetNumExtAddr()

uint8_t ns3::PendingAddrFields::GetNumExtAddr ( void  ) const

Get the number of Extended Pending Address indicated in the Pending Address Specification Field.

Returns
The number Short Pending Address.

Definition at line 334 of file lr-wpan-fields.cc.

References m_pndAddrSpecNumExtAddr.

Referenced by ns3::operator<<().

+ Here is the caller graph for this function:

◆ GetNumShortAddr()

uint8_t ns3::PendingAddrFields::GetNumShortAddr ( void  ) const

Get the number of Short Pending Address indicated in the Pending Address Specification Field.

Returns
The number Short Pending Address.

Definition at line 327 of file lr-wpan-fields.cc.

References m_pndAddrSpecNumShortAddr.

Referenced by ns3::operator<<().

+ Here is the caller graph for this function:

◆ GetPndAddrSpecField()

uint8_t ns3::PendingAddrFields::GetPndAddrSpecField ( void  ) const

Get the whole Pending Address Specification Field from the Pending Address Fields.

Returns
The Pending Address Specification Field.

Definition at line 340 of file lr-wpan-fields.cc.

References m_pndAddrSpecNumExtAddr, and m_pndAddrSpecNumShortAddr.

Referenced by ns3::BeaconPayloadHeader::Print(), and Serialize().

+ Here is the caller graph for this function:

◆ GetSerializedSize()

uint32_t ns3::PendingAddrFields::GetSerializedSize ( void  ) const

Get the size of the serialized Pending Address Fields.

Returns
the size of the serialized fields.

Definition at line 425 of file lr-wpan-fields.cc.

References m_pndAddrSpecNumExtAddr, and m_pndAddrSpecNumShortAddr.

Referenced by ns3::BeaconPayloadHeader::GetSerializedSize().

+ Here is the caller graph for this function:

◆ SearchAddress() [1/2]

bool ns3::PendingAddrFields::SearchAddress ( Mac16Address  shortAddr)

Search for the short Pending Address in the Address List.

Parameters
shortAddrThe extended Address to look in the Address List.
Returns
True if the address exist in the extended Address List.

Definition at line 385 of file lr-wpan-fields.cc.

References m_pndAddrSpecNumShortAddr, and m_shortAddrList.

◆ SearchAddress() [2/2]

bool ns3::PendingAddrFields::SearchAddress ( Mac64Address  extAddr)

Search for the extended Pending Address in the Address List.

Parameters
extAddrThe extended Address to look in the Address List.
Returns
True if the address exist in the extended Address List.

Definition at line 400 of file lr-wpan-fields.cc.

References m_extAddrList, and m_pndAddrSpecNumExtAddr.

◆ Serialize()

Buffer::Iterator ns3::PendingAddrFields::Serialize ( Buffer::Iterator  i) const

Serialize the entire Pending Address Fields.

Parameters
ian iterator which points to where the Pending Address Fields should be written.
Returns
an iterator.

Definition at line 437 of file lr-wpan-fields.cc.

References GetPndAddrSpecField(), bianchi11ax::k, m_extAddrList, m_pndAddrSpecNumExtAddr, m_pndAddrSpecNumShortAddr, m_shortAddrList, ns3::WriteTo(), and ns3::Buffer::Iterator::WriteU8().

Referenced by ns3::BeaconPayloadHeader::Serialize().

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

◆ SetPndAddrSpecField()

void ns3::PendingAddrFields::SetPndAddrSpecField ( uint8_t  pndAddrSpecField)

Set the whole Pending Address Specification field.

This field is part of the Pending Address Fields header.

Parameters
pndAddrSpecFieldThe Pending Address Specification Field

Definition at line 415 of file lr-wpan-fields.cc.

References m_pndAddrSpecNumExtAddr, and m_pndAddrSpecNumShortAddr.

Referenced by Deserialize().

+ Here is the caller graph for this function:

Member Data Documentation

◆ m_extAddrList

std::array<Mac64Address,7> ns3::PendingAddrFields::m_extAddrList
private

Pending Extended Address List.

Definition at line 332 of file lr-wpan-fields.h.

Referenced by AddAddress(), Deserialize(), SearchAddress(), and Serialize().

◆ m_pndAddrSpecNumExtAddr

uint8_t ns3::PendingAddrFields::m_pndAddrSpecNumExtAddr
private

Pending Address Specification field Number of Extended Address (Bits 4-6) Pending Address Specification field Reserved (Not Necessary) (Bit 7)

Definition at line 328 of file lr-wpan-fields.h.

Referenced by AddAddress(), Deserialize(), GetNumExtAddr(), GetPndAddrSpecField(), GetSerializedSize(), PendingAddrFields(), SearchAddress(), Serialize(), and SetPndAddrSpecField().

◆ m_pndAddrSpecNumShortAddr

uint8_t ns3::PendingAddrFields::m_pndAddrSpecNumShortAddr
private

Pending Address Specification field Number of Short Address (Bits 0-2) Pending Address Specification field Reserved (Not Necessary)(Bit 3)

Definition at line 326 of file lr-wpan-fields.h.

Referenced by AddAddress(), Deserialize(), GetNumShortAddr(), GetPndAddrSpecField(), GetSerializedSize(), PendingAddrFields(), SearchAddress(), Serialize(), and SetPndAddrSpecField().

◆ m_shortAddrList

std::array<Mac16Address,7> ns3::PendingAddrFields::m_shortAddrList
private

Pending Short Address List.

Definition at line 331 of file lr-wpan-fields.h.

Referenced by AddAddress(), Deserialize(), SearchAddress(), and Serialize().


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