A Discrete-Event Network Simulator
API
Loading...
Searching...
No Matches
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.
 
void AddAddress (Mac64Address extAddr)
 Add a extended Pending Address to the Address List.
 
Buffer::Iterator Deserialize (Buffer::Iterator i)
 Deserialize the all the Pending Address Fields.
 
uint8_t GetNumExtAddr () const
 Get the number of Extended Pending Address indicated in the Pending Address Specification Field.
 
uint8_t GetNumShortAddr () const
 Get the number of Short Pending Address indicated in the Pending Address Specification Field.
 
uint8_t GetPndAddrSpecField () const
 Get the whole Pending Address Specification Field from the Pending Address Fields.
 
uint32_t GetSerializedSize () const
 Get the size of the serialized Pending Address Fields.
 
bool SearchAddress (Mac16Address shortAddr)
 Search for the short Pending Address in the Address List.
 
bool SearchAddress (Mac64Address extAddr)
 Search for the extended Pending Address in the Address List.
 
Buffer::Iterator Serialize (Buffer::Iterator i) const
 Serialize the entire Pending Address Fields.
 
void SetPndAddrSpecField (uint8_t pndAddrSpecField)
 Set the whole Pending Address Specification field.
 

Private Attributes

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

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 249 of file lr-wpan-fields.h.

Constructor & Destructor Documentation

◆ PendingAddrFields()

ns3::PendingAddrFields::PendingAddrFields ( )

Definition at line 307 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 339 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 355 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 438 of file lr-wpan-fields.cc.

References 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 ( ) const

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

Returns
The number Short Pending Address.

Definition at line 320 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 ( ) const

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

Returns
The number Short Pending Address.

Definition at line 314 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 ( ) const

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

Returns
The Pending Address Specification Field.

Definition at line 326 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 ( ) const

Get the size of the serialized Pending Address Fields.

Returns
the size of the serialized fields.

Definition at line 408 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 371 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 385 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 420 of file lr-wpan-fields.cc.

References GetPndAddrSpecField(), 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 399 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 326 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 321 of file lr-wpan-fields.h.

Referenced by PendingAddrFields(), AddAddress(), Deserialize(), GetNumExtAddr(), GetPndAddrSpecField(), GetSerializedSize(), 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 318 of file lr-wpan-fields.h.

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

◆ m_shortAddrList

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

Pending Short Address List.

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

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


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