The network layer Network Table See Zigbee specification r22.1.0, 3.6.1.5. More...
#include "zigbee-nwk-tables.h"
 Collaboration diagram for ns3::zigbee::NeighborTable:
 Collaboration diagram for ns3::zigbee::NeighborTable:| Public Member Functions | |
| NeighborTable () | |
| The neighbor table constructor. | |
| bool | AddEntry (Ptr< NeighborTableEntry > entry) | 
| Add an entry to the neighbor table. | |
| void | Delete (Mac64Address extAddr) | 
| Delete the specified entry from the neighbor table. | |
| void | Dispose () | 
| Dispose of the table and all its elements. | |
| uint32_t | GetMaxTableSize () const | 
| Get the maximum size of the neighbor table. | |
| bool | GetParent (Ptr< NeighborTableEntry > &entryFound) | 
| Look for this device Parent neighbor (A.K.A coordinator). | |
| uint32_t | GetSize () | 
| Get the size of the neighbor table. | |
| bool | LookUpEntry (Mac16Address nwkAddr, Ptr< NeighborTableEntry > &entryFound) | 
| Look and return and entry if exists in the neighbor table. | |
| bool | LookUpEntry (Mac64Address extAddr, Ptr< NeighborTableEntry > &entryFound) | 
| Look and return and entry if exists in the neighbor table. | |
| bool | LookUpForBestParent (uint64_t epid, Ptr< NeighborTableEntry > &entryFound) | 
| Perform a search for the best candidate parent based on some attributes. | |
| void | Print (Ptr< OutputStreamWrapper > stream) const | 
| Print the neighbor table. | |
| void | Purge () | 
| Remove old entries from the neighbor table. | |
| void | SetMaxTableSize (uint32_t size) | 
| Set the maximum size of the neighbor table. | |
| Private Member Functions | |
| uint8_t | GetLinkCost (uint8_t lqi) const | 
| Get the link cost based on the link quality indicator (LQI) value. | |
| Private Attributes | |
| uint32_t | m_maxTableSize | 
| The maximum size of the neighbor table. | |
| std::deque< Ptr< NeighborTableEntry > > | m_neighborTable | 
| The neighbor table object. | |
The network layer Network Table See Zigbee specification r22.1.0, 3.6.1.5.
Definition at line 1089 of file zigbee-nwk-tables.h.
| ns3::zigbee::NeighborTable::NeighborTable | ( | ) | 
The neighbor table constructor.
Definition at line 999 of file zigbee-nwk-tables.cc.
References m_maxTableSize.
| bool ns3::zigbee::NeighborTable::AddEntry | ( | Ptr< NeighborTableEntry > | entry | ) | 
Add an entry to the neighbor table.
| entry | The entry to be added to the neighbor table. | 
Definition at line 1005 of file zigbee-nwk-tables.cc.
References m_maxTableSize, and m_neighborTable.
Referenced by ns3::zigbee::ZigbeeNwk::MlmeAssociateIndication(), ns3::zigbee::ZigbeeNwk::MlmeBeaconNotifyIndication(), and ns3::zigbee::ZigbeeNwk::NlmeDirectJoinRequest().
 Here is the caller graph for this function:
 Here is the caller graph for this function:| void ns3::zigbee::NeighborTable::Delete | ( | Mac64Address | extAddr | ) | 
Delete the specified entry from the neighbor table.
| extAddr | The EUI-64 of the entry to be removed from the neighbor table | 
Definition at line 1027 of file zigbee-nwk-tables.cc.
References m_neighborTable.
Referenced by ns3::zigbee::ZigbeeNwk::MlmeAssociateIndication().
 Here is the caller graph for this function:
 Here is the caller graph for this function:| void ns3::zigbee::NeighborTable::Dispose | ( | ) | 
Dispose of the table and all its elements.
Definition at line 1205 of file zigbee-nwk-tables.cc.
References m_neighborTable.
Referenced by ns3::zigbee::ZigbeeNwk::DoDispose().
 Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | private | 
Get the link cost based on the link quality indicator (LQI) value.
The calculation of the link cost is based on a non-linear mapping of the lqi. A link cost of 1 is the best possible value (equivalent to 255 LQI).
| lqi | The link quality indicator value (0-255) | 
Definition at line 1166 of file zigbee-nwk-tables.cc.
References NS_ASSERT_MSG.
Referenced by LookUpForBestParent().
 Here is the caller graph for this function:
 Here is the caller graph for this function:| uint32_t ns3::zigbee::NeighborTable::GetMaxTableSize | ( | ) | const | 
Get the maximum size of the neighbor table.
Definition at line 1160 of file zigbee-nwk-tables.cc.
References m_maxTableSize.
| bool ns3::zigbee::NeighborTable::GetParent | ( | Ptr< NeighborTableEntry > & | entryFound | ) | 
Look for this device Parent neighbor (A.K.A coordinator).
| entryFound | The returned entry if found in the neighbor table. | 
Definition at line 1071 of file zigbee-nwk-tables.cc.
References m_neighborTable, ns3::zigbee::NBR_PARENT, and NS_LOG_FUNCTION.
Referenced by ns3::zigbee::ZigbeeNwk::NldeDataRequest().
 Here is the caller graph for this function:
 Here is the caller graph for this function:| uint32_t ns3::zigbee::NeighborTable::GetSize | ( | ) | 
Get the size of the neighbor table.
Definition at line 1148 of file zigbee-nwk-tables.cc.
References m_neighborTable.
Referenced by ns3::zigbee::ZigbeeNwk::NlmeDirectJoinRequest().
 Here is the caller graph for this function:
 Here is the caller graph for this function:| bool ns3::zigbee::NeighborTable::LookUpEntry | ( | Mac16Address | nwkAddr, | 
| Ptr< NeighborTableEntry > & | entryFound ) | 
Look and return and entry if exists in the neighbor table.
| nwkAddr | The network address used to look for an element in the table. | 
| entryFound | The returned entry if found in the neighbor table. | 
Definition at line 1035 of file zigbee-nwk-tables.cc.
References m_neighborTable, and NS_LOG_FUNCTION.
Referenced by ns3::zigbee::ZigbeeNwk::FindNextHop(), ns3::zigbee::ZigbeeNwk::FindRoute(), ns3::zigbee::ZigbeeNwk::McpsDataIndication(), ns3::zigbee::ZigbeeNwk::MlmeAssociateConfirm(), ns3::zigbee::ZigbeeNwk::MlmeAssociateIndication(), ns3::zigbee::ZigbeeNwk::MlmeBeaconNotifyIndication(), ns3::zigbee::ZigbeeNwk::MlmeOrphanIndication(), and ns3::zigbee::ZigbeeNwk::NlmeDirectJoinRequest().
 Here is the caller graph for this function:
 Here is the caller graph for this function:| bool ns3::zigbee::NeighborTable::LookUpEntry | ( | Mac64Address | extAddr, | 
| Ptr< NeighborTableEntry > & | entryFound ) | 
Look and return and entry if exists in the neighbor table.
| extAddr | The extended address (EUI-64) used to look for an element in the table. | 
| entryFound | The returned entry if found in the neighbor table. | 
Definition at line 1053 of file zigbee-nwk-tables.cc.
References m_neighborTable, and NS_LOG_FUNCTION.
| bool ns3::zigbee::NeighborTable::LookUpForBestParent | ( | uint64_t | epid, | 
| Ptr< NeighborTableEntry > & | entryFound ) | 
Perform a search for the best candidate parent based on some attributes.
See Association Join process , Zigbee specification R21, Section 3.6.1.4.1
| epid | The extended PAN id of the network in which we look for parent candidates. | 
| entryFound | The returned entry if found | 
Definition at line 1088 of file zigbee-nwk-tables.cc.
References GetLinkCost(), m_neighborTable, ns3::zigbee::ZIGBEE_COORDINATOR, and ns3::zigbee::ZIGBEE_ROUTER.
Referenced by ns3::zigbee::ZigbeeNwk::NlmeJoinRequest().
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| void ns3::zigbee::NeighborTable::Print | ( | Ptr< OutputStreamWrapper > | stream | ) | const | 
Print the neighbor table.
| stream | The output stream where the table is printed | 
Definition at line 1119 of file zigbee-nwk-tables.cc.
References m_neighborTable.
Referenced by ns3::zigbee::ZigbeeNwk::PrintNeighborTable().
 Here is the caller graph for this function:
 Here is the caller graph for this function:| void ns3::zigbee::NeighborTable::Purge | ( | ) | 
Remove old entries from the neighbor table.
Definition at line 1019 of file zigbee-nwk-tables.cc.
References m_neighborTable, and ns3::Simulator::Now().
 Here is the call graph for this function:
 Here is the call graph for this function:| void ns3::zigbee::NeighborTable::SetMaxTableSize | ( | uint32_t | size | ) | 
Set the maximum size of the neighbor table.
| size | The size of the neighbor table. | 
Definition at line 1154 of file zigbee-nwk-tables.cc.
References m_maxTableSize.
| 
 | private | 
The maximum size of the neighbor table.
Definition at line 1198 of file zigbee-nwk-tables.h.
Referenced by NeighborTable(), AddEntry(), GetMaxTableSize(), and SetMaxTableSize().
| 
 | private | 
The neighbor table object.
Definition at line 1197 of file zigbee-nwk-tables.h.
Referenced by AddEntry(), Delete(), Dispose(), GetParent(), GetSize(), LookUpEntry(), LookUpEntry(), LookUpForBestParent(), Print(), and Purge().