A Discrete-Event Network Simulator
API
Loading...
Searching...
No Matches
ns3::olsr::OlsrState Class Reference

This class encapsulates all data structures needed for maintaining internal state of an OLSR node. More...

#include "olsr-state.h"

+ Collaboration diagram for ns3::olsr::OlsrState:

Public Member Functions

 OlsrState ()
 
void EraseAssociation (const Association &tuple)
 Erases an association.
 
void EraseAssociationTuple (const AssociationTuple &tuple)
 Erases a known association tuple.
 
void EraseDuplicateTuple (const DuplicateTuple &tuple)
 Erases a duplicate tuple.
 
void EraseIfaceAssocTuple (const IfaceAssocTuple &tuple)
 Erases a interface association tuple.
 
void EraseLinkTuple (const LinkTuple &tuple)
 Erases a link tuple.
 
void EraseMprSelectorTuple (const MprSelectorTuple &tuple)
 Erases a MPR selector tuple.
 
void EraseMprSelectorTuples (const Ipv4Address &mainAddr)
 Erases all MPR selector tuples belonging to the same address.
 
void EraseNeighborTuple (const Ipv4Address &mainAddr)
 Erases a neighbor tuple.
 
void EraseNeighborTuple (const NeighborTuple &neighborTuple)
 Erases a neighbor tuple.
 
void EraseOlderTopologyTuples (const Ipv4Address &lastAddr, uint16_t ansn)
 Erases a topology tuple.
 
void EraseTopologyTuple (const TopologyTuple &tuple)
 Erases a topology tuple.
 
void EraseTwoHopNeighborTuple (const TwoHopNeighborTuple &tuple)
 Erases a 2-hop neighbor tuple.
 
void EraseTwoHopNeighborTuples (const Ipv4Address &neighbor)
 Erases the 2-hop neighbor tuples with the same 1-hop neighbor.
 
void EraseTwoHopNeighborTuples (const Ipv4Address &neighbor, const Ipv4Address &twoHopNeighbor)
 Erases the 2-hop neighbor tuples with matching predicates.
 
AssociationTupleFindAssociationTuple (const Ipv4Address &gatewayAddr, const Ipv4Address &networkAddr, const Ipv4Mask &netmask)
 Finds an association tuple.
 
DuplicateTupleFindDuplicateTuple (const Ipv4Address &address, uint16_t sequenceNumber)
 Finds a duplicate tuple.
 
IfaceAssocTupleFindIfaceAssocTuple (const Ipv4Address &ifaceAddr)
 Finds a interface association tuple.
 
const IfaceAssocTupleFindIfaceAssocTuple (const Ipv4Address &ifaceAddr) const
 Finds a interface association tuple.
 
LinkTupleFindLinkTuple (const Ipv4Address &ifaceAddr)
 Finds a link tuple.
 
bool FindMprAddress (const Ipv4Address &address)
 Checks if there's an MPR with a specific address.
 
MprSelectorTupleFindMprSelectorTuple (const Ipv4Address &mainAddr)
 Finds a MPR selector tuple.
 
std::vector< Ipv4AddressFindNeighborInterfaces (const Ipv4Address &neighborMainAddr) const
 Returns a vector of all interfaces of a given neighbor, with the exception of the "main" one.
 
NeighborTupleFindNeighborTuple (const Ipv4Address &mainAddr)
 Finds a neighbor tuple.
 
NeighborTupleFindNeighborTuple (const Ipv4Address &mainAddr, Willingness willingness)
 Finds a neighbor tuple.
 
TopologyTupleFindNewerTopologyTuple (const Ipv4Address &lastAddr, uint16_t ansn)
 Finds a topology tuple.
 
LinkTupleFindSymLinkTuple (const Ipv4Address &ifaceAddr, Time time)
 Finds a symmetrical link tuple.
 
const NeighborTupleFindSymNeighborTuple (const Ipv4Address &mainAddr) const
 Finds a symmetrical neighbor tuple.
 
TopologyTupleFindTopologyTuple (const Ipv4Address &destAddr, const Ipv4Address &lastAddr)
 Finds a topology tuple.
 
TwoHopNeighborTupleFindTwoHopNeighborTuple (const Ipv4Address &neighbor, const Ipv4Address &twoHopNeighbor)
 Finds a 2-hop neighbor tuple.
 
const AssociationsGetAssociations () const
 Gets the association set the node has.
 
const AssociationSetGetAssociationSet () const
 Gets the association set known to the node.
 
const IfaceAssocSetGetIfaceAssocSet () const
 Gets the interface association set.
 
IfaceAssocSetGetIfaceAssocSetMutable ()
 Gets a mutable reference to the interface association set.
 
const LinkSetGetLinks () const
 Gets the Link set.
 
const MprSelectorSetGetMprSelectors () const
 Gets the MPR selectors.
 
MprSet GetMprSet () const
 Gets the MPR set.
 
NeighborSetGetNeighbors ()
 Gets the neighbor set.
 
const NeighborSetGetNeighbors () const
 Gets the neighbor set.
 
const TopologySetGetTopologySet () const
 Gets the topology set.
 
TwoHopNeighborSetGetTwoHopNeighbors ()
 Gets the 2-hop neighbor set.
 
const TwoHopNeighborSetGetTwoHopNeighbors () const
 Gets the 2-hop neighbor set.
 
void InsertAssociation (const Association &tuple)
 Inserts an association tuple.
 
void InsertAssociationTuple (const AssociationTuple &tuple)
 Inserts a known association tuple.
 
void InsertDuplicateTuple (const DuplicateTuple &tuple)
 Inserts a duplicate tuple.
 
void InsertIfaceAssocTuple (const IfaceAssocTuple &tuple)
 Inserts a interface association tuple.
 
LinkTupleInsertLinkTuple (const LinkTuple &tuple)
 Inserts a link tuple.
 
void InsertMprSelectorTuple (const MprSelectorTuple &tuple)
 Inserts a MPR selector tuple.
 
void InsertNeighborTuple (const NeighborTuple &tuple)
 Inserts a neighbor tuple.
 
void InsertTopologyTuple (const TopologyTuple &tuple)
 Inserts a topology tuple.
 
void InsertTwoHopNeighborTuple (const TwoHopNeighborTuple &tuple)
 Inserts a 2-hop neighbor tuple.
 
std::string PrintMprSelectorSet () const
 Prints the MPR selector sets.
 
void SetMprSet (MprSet mprSet)
 Sets the MPR set to the one specified.
 

Protected Attributes

Associations m_associations
 The node's local Host Network Associations that will be advertised using HNA messages.
 
AssociationSet m_associationSet
 Association Set (RFC 3626 , section12.2).
 
DuplicateSet m_duplicateSet
 Duplicate Set (RFC 3626 , section 3.4).
 
IfaceAssocSet m_ifaceAssocSet
 Interface Association Set (RFC 3626 , section 4.1).
 
LinkSet m_linkSet
 Link Set (RFC 3626 , section 4.2.1).
 
MprSelectorSet m_mprSelectorSet
 MPR Selector Set (RFC 3626 , section 4.3.4).
 
MprSet m_mprSet
 MPR Set (RFC 3626 , section 4.3.3).
 
NeighborSet m_neighborSet
 Neighbor Set (RFC 3626 , section 4.3.1).
 
TopologySet m_topologySet
 Topology Set (RFC 3626 , section 4.4).
 
TwoHopNeighborSet m_twoHopNeighborSet
 2-hop Neighbor Set (RFC 3626 , section 4.3.2).
 

Detailed Description

This class encapsulates all data structures needed for maintaining internal state of an OLSR node.

Definition at line 24 of file olsr-state.h.

Constructor & Destructor Documentation

◆ OlsrState()

ns3::olsr::OlsrState::OlsrState ( )
inline

Definition at line 43 of file olsr-state.h.

Member Function Documentation

◆ EraseAssociation()

void ns3::olsr::OlsrState::EraseAssociation ( const Association & tuple)

Erases an association.

Parameters
tupleThe tuple to erase.

Definition at line 517 of file olsr-state.cc.

References m_associations.

Referenced by ns3::olsr::RoutingProtocol::RemoveHostNetworkAssociation().

+ Here is the caller graph for this function:

◆ EraseAssociationTuple()

void ns3::olsr::OlsrState::EraseAssociationTuple ( const AssociationTuple & tuple)

Erases a known association tuple.

Parameters
tupleThe tuple to erase.

Definition at line 498 of file olsr-state.cc.

References m_associationSet.

Referenced by ns3::olsr::RoutingProtocol::RemoveAssociationTuple().

+ Here is the caller graph for this function:

◆ EraseDuplicateTuple()

void ns3::olsr::OlsrState::EraseDuplicateTuple ( const DuplicateTuple & tuple)

Erases a duplicate tuple.

Parameters
tupleThe tuple to erase.

Definition at line 282 of file olsr-state.cc.

References m_duplicateSet.

Referenced by ns3::olsr::RoutingProtocol::RemoveDuplicateTuple().

+ Here is the caller graph for this function:

◆ EraseIfaceAssocTuple()

void ns3::olsr::OlsrState::EraseIfaceAssocTuple ( const IfaceAssocTuple & tuple)

Erases a interface association tuple.

Parameters
tupleThe tuple to erase.

Definition at line 447 of file olsr-state.cc.

References m_ifaceAssocSet.

Referenced by ns3::olsr::RoutingProtocol::RemoveIfaceAssocTuple().

+ Here is the caller graph for this function:

◆ EraseLinkTuple()

void ns3::olsr::OlsrState::EraseLinkTuple ( const LinkTuple & tuple)

Erases a link tuple.

Parameters
tupleThe tuple to erase.

Definition at line 336 of file olsr-state.cc.

References m_linkSet.

Referenced by ns3::olsr::RoutingProtocol::RemoveLinkTuple().

+ Here is the caller graph for this function:

◆ EraseMprSelectorTuple()

void ns3::olsr::OlsrState::EraseMprSelectorTuple ( const MprSelectorTuple & tuple)

Erases a MPR selector tuple.

Parameters
tupleThe MPR selector tuple.

Definition at line 40 of file olsr-state.cc.

References m_mprSelectorSet.

Referenced by ns3::olsr::RoutingProtocol::RemoveMprSelectorTuple().

+ Here is the caller graph for this function:

◆ EraseMprSelectorTuples()

void ns3::olsr::OlsrState::EraseMprSelectorTuples ( const Ipv4Address & mainAddr)

Erases all MPR selector tuples belonging to the same address.

Parameters
mainAddrThe MPR selector main address.

Definition at line 53 of file olsr-state.cc.

References m_mprSelectorSet.

Referenced by ns3::olsr::RoutingProtocol::NeighborLoss().

+ Here is the caller graph for this function:

◆ EraseNeighborTuple() [1/2]

void ns3::olsr::OlsrState::EraseNeighborTuple ( const Ipv4Address & mainAddr)

Erases a neighbor tuple.

Parameters
mainAddrThe neighbor tuple main address.

Definition at line 148 of file olsr-state.cc.

References m_neighborSet.

◆ EraseNeighborTuple() [2/2]

void ns3::olsr::OlsrState::EraseNeighborTuple ( const NeighborTuple & neighborTuple)

Erases a neighbor tuple.

Parameters
neighborTupleThe neighbor tuple.

Definition at line 135 of file olsr-state.cc.

References m_neighborSet.

Referenced by ns3::olsr::RoutingProtocol::RemoveLinkTuple(), and ns3::olsr::RoutingProtocol::RemoveNeighborTuple().

+ Here is the caller graph for this function:

◆ EraseOlderTopologyTuples()

void ns3::olsr::OlsrState::EraseOlderTopologyTuples ( const Ipv4Address & lastAddr,
uint16_t ansn )

Erases a topology tuple.

Parameters
lastAddrThe address of the node previous to the destination.
ansnThe Advertised Neighbor Sequence Number.

Definition at line 397 of file olsr-state.cc.

References m_topologySet.

Referenced by ns3::olsr::RoutingProtocol::ProcessTc().

+ Here is the caller graph for this function:

◆ EraseTopologyTuple()

void ns3::olsr::OlsrState::EraseTopologyTuple ( const TopologyTuple & tuple)

Erases a topology tuple.

Parameters
tupleThe tuple to erase.

Definition at line 384 of file olsr-state.cc.

References m_topologySet.

Referenced by ns3::olsr::RoutingProtocol::RemoveTopologyTuple().

+ Here is the caller graph for this function:

◆ EraseTwoHopNeighborTuple()

void ns3::olsr::OlsrState::EraseTwoHopNeighborTuple ( const TwoHopNeighborTuple & tuple)

Erases a 2-hop neighbor tuple.

Parameters
tupleThe 2-hop neighbor tuple.

Definition at line 193 of file olsr-state.cc.

References m_twoHopNeighborSet.

Referenced by ns3::olsr::RoutingProtocol::RemoveTwoHopNeighborTuple().

+ Here is the caller graph for this function:

◆ EraseTwoHopNeighborTuples() [1/2]

void ns3::olsr::OlsrState::EraseTwoHopNeighborTuples ( const Ipv4Address & neighbor)

Erases the 2-hop neighbor tuples with the same 1-hop neighbor.

Parameters
neighborThe neighbor address.

Definition at line 224 of file olsr-state.cc.

References m_twoHopNeighborSet.

Referenced by ns3::olsr::RoutingProtocol::NeighborLoss(), and ns3::olsr::RoutingProtocol::PopulateTwoHopNeighborSet().

+ Here is the caller graph for this function:

◆ EraseTwoHopNeighborTuples() [2/2]

void ns3::olsr::OlsrState::EraseTwoHopNeighborTuples ( const Ipv4Address & neighbor,
const Ipv4Address & twoHopNeighbor )

Erases the 2-hop neighbor tuples with matching predicates.

Parameters
neighborThe neighbor address.
twoHopNeighborThe 2-hop neighbor main address.

Definition at line 206 of file olsr-state.cc.

References m_twoHopNeighborSet.

◆ FindAssociationTuple()

AssociationTuple * ns3::olsr::OlsrState::FindAssociationTuple ( const Ipv4Address & gatewayAddr,
const Ipv4Address & networkAddr,
const Ipv4Mask & netmask )

Finds an association tuple.

Parameters
gatewayAddrThe gateway address.
networkAddrThe network address.
netmaskThe network mask.
Returns
The association tuple, or a null pointer if no match.

Definition at line 482 of file olsr-state.cc.

References m_associationSet.

Referenced by ns3::olsr::RoutingProtocol::AssociationTupleTimerExpire(), and ns3::olsr::RoutingProtocol::ProcessHna().

+ Here is the caller graph for this function:

◆ FindDuplicateTuple()

DuplicateTuple * ns3::olsr::OlsrState::FindDuplicateTuple ( const Ipv4Address & address,
uint16_t sequenceNumber )

Finds a duplicate tuple.

Parameters
addressThe duplicate tuple address.
sequenceNumberThe duplicate tuple sequence number.
Returns
The duplicate tuple, or a null pointer if no match.

Definition at line 269 of file olsr-state.cc.

References m_duplicateSet.

Referenced by ns3::olsr::RoutingProtocol::DupTupleTimerExpire(), and ns3::olsr::RoutingProtocol::RecvOlsr().

+ Here is the caller graph for this function:

◆ FindIfaceAssocTuple() [1/2]

IfaceAssocTuple * ns3::olsr::OlsrState::FindIfaceAssocTuple ( const Ipv4Address & ifaceAddr)

Finds a interface association tuple.

Parameters
ifaceAddrThe interface address.
Returns
The interface association tuple, or a null pointer if no match.

Definition at line 421 of file olsr-state.cc.

References m_ifaceAssocSet.

Referenced by ns3::olsr::RoutingProtocol::GetMainAddress(), and ns3::olsr::RoutingProtocol::IfaceAssocTupleTimerExpire().

+ Here is the caller graph for this function:

◆ FindIfaceAssocTuple() [2/2]

const IfaceAssocTuple * ns3::olsr::OlsrState::FindIfaceAssocTuple ( const Ipv4Address & ifaceAddr) const

Finds a interface association tuple.

Parameters
ifaceAddrThe interface address.
Returns
The interface association tuple, or a null pointer if no match.

Definition at line 434 of file olsr-state.cc.

References m_ifaceAssocSet.

◆ FindLinkTuple()

LinkTuple * ns3::olsr::OlsrState::FindLinkTuple ( const Ipv4Address & ifaceAddr)

Finds a link tuple.

Parameters
ifaceAddrThe interface address of the link.
Returns
The link tuple, or a null pointer if no match.

Definition at line 303 of file olsr-state.cc.

References m_linkSet.

Referenced by ns3::olsr::RoutingProtocol::LinkSensing(), and ns3::olsr::RoutingProtocol::LinkTupleTimerExpire().

+ Here is the caller graph for this function:

◆ FindMprAddress()

bool ns3::olsr::OlsrState::FindMprAddress ( const Ipv4Address & address)

Checks if there's an MPR with a specific address.

Parameters
addressThe address to test.
Returns
True if a MPR with the specified address exists.

Definition at line 248 of file olsr-state.cc.

References m_mprSet.

Referenced by ns3::olsr::RoutingProtocol::SendHello().

+ Here is the caller graph for this function:

◆ FindMprSelectorTuple()

MprSelectorTuple * ns3::olsr::OlsrState::FindMprSelectorTuple ( const Ipv4Address & mainAddr)

Finds a MPR selector tuple.

Parameters
mainAddrThe MPR selector main address.
Returns
The MPR selector, if found. Else it returns a null pointer.

Definition at line 27 of file olsr-state.cc.

References m_mprSelectorSet.

Referenced by ns3::olsr::RoutingProtocol::ForwardDefault(), ns3::olsr::RoutingProtocol::MprSelTupleTimerExpire(), and ns3::olsr::RoutingProtocol::PopulateMprSelectorSet().

+ Here is the caller graph for this function:

◆ FindNeighborInterfaces()

std::vector< Ipv4Address > ns3::olsr::OlsrState::FindNeighborInterfaces ( const Ipv4Address & neighborMainAddr) const

Returns a vector of all interfaces of a given neighbor, with the exception of the "main" one.

Parameters
neighborMainAddrThe neighbor main address
Returns
A container of the neighbor addresses (excluding the main one).

Definition at line 466 of file olsr-state.cc.

References m_ifaceAssocSet.

Referenced by ns3::olsr::RoutingProtocol::SendHello().

+ Here is the caller graph for this function:

◆ FindNeighborTuple() [1/2]

NeighborTuple * ns3::olsr::OlsrState::FindNeighborTuple ( const Ipv4Address & mainAddr)

Finds a neighbor tuple.

Parameters
mainAddrThe neighbor tuple main address.
Returns
The neighbor tuple, if found. Else it returns a null pointer.

Definition at line 96 of file olsr-state.cc.

References m_neighborSet.

Referenced by ns3::olsr::RoutingProtocol::Degree(), ns3::olsr::RoutingProtocol::LinkTupleUpdated(), and ns3::olsr::RoutingProtocol::PopulateNeighborSet().

+ Here is the caller graph for this function:

◆ FindNeighborTuple() [2/2]

NeighborTuple * ns3::olsr::OlsrState::FindNeighborTuple ( const Ipv4Address & mainAddr,
Willingness willingness )

Finds a neighbor tuple.

Parameters
mainAddrThe neighbor tuple main address.
willingnessThe neighbor willingness.
Returns
The neighbor tuple, if found. Else it returns a null pointer.

Definition at line 122 of file olsr-state.cc.

References m_neighborSet.

◆ FindNewerTopologyTuple()

TopologyTuple * ns3::olsr::OlsrState::FindNewerTopologyTuple ( const Ipv4Address & lastAddr,
uint16_t ansn )

Finds a topology tuple.

Parameters
lastAddrThe address of the node previous to the destination.
ansnThe Advertised Neighbor Sequence Number.
Returns
The topology tuple, or a null pointer if no match.

Definition at line 371 of file olsr-state.cc.

References m_topologySet.

Referenced by ns3::olsr::RoutingProtocol::ProcessTc().

+ Here is the caller graph for this function:

◆ FindSymLinkTuple()

LinkTuple * ns3::olsr::OlsrState::FindSymLinkTuple ( const Ipv4Address & ifaceAddr,
Time time )

Finds a symmetrical link tuple.

Parameters
ifaceAddrThe interface address of the link.
timeThe time at which the link should be considered symmetrical.
Returns
The link tuple, or a null pointer if no match.

Definition at line 316 of file olsr-state.cc.

References m_linkSet.

Referenced by ns3::olsr::RoutingProtocol::ForwardDefault(), ns3::olsr::RoutingProtocol::ProcessHna(), ns3::olsr::RoutingProtocol::ProcessMid(), and ns3::olsr::RoutingProtocol::ProcessTc().

+ Here is the caller graph for this function:

◆ FindSymNeighborTuple()

const NeighborTuple * ns3::olsr::OlsrState::FindSymNeighborTuple ( const Ipv4Address & mainAddr) const

Finds a symmetrical neighbor tuple.

Parameters
mainAddrThe neighbor tuple main address.
Returns
The neighbor tuple, if found. Else it returns a null pointer.

Definition at line 109 of file olsr-state.cc.

References m_neighborSet, and ns3::olsr::NeighborTuple::STATUS_SYM.

Referenced by ns3::olsr::RoutingProtocol::RoutingTableComputation().

+ Here is the caller graph for this function:

◆ FindTopologyTuple()

TopologyTuple * ns3::olsr::OlsrState::FindTopologyTuple ( const Ipv4Address & destAddr,
const Ipv4Address & lastAddr )

Finds a topology tuple.

Parameters
destAddrThe destination address.
lastAddrThe address of the node previous to the destination.
Returns
The topology tuple, or a null pointer if no match.

Definition at line 358 of file olsr-state.cc.

References m_topologySet.

Referenced by ns3::olsr::RoutingProtocol::ProcessTc(), and ns3::olsr::RoutingProtocol::TopologyTupleTimerExpire().

+ Here is the caller graph for this function:

◆ FindTwoHopNeighborTuple()

TwoHopNeighborTuple * ns3::olsr::OlsrState::FindTwoHopNeighborTuple ( const Ipv4Address & neighbor,
const Ipv4Address & twoHopNeighbor )

Finds a 2-hop neighbor tuple.

Parameters
neighborThe neighbor main address.
twoHopNeighborThe 2-hop neighbor main address.
Returns
The 2-hop neighbor tuple, if found. Else it returns a null pointer.

Definition at line 178 of file olsr-state.cc.

References m_twoHopNeighborSet.

Referenced by ns3::olsr::RoutingProtocol::Nb2hopTupleTimerExpire(), and ns3::olsr::RoutingProtocol::PopulateTwoHopNeighborSet().

+ Here is the caller graph for this function:

◆ GetAssociations()

const Associations & ns3::olsr::OlsrState::GetAssociations ( ) const
inline

Gets the association set the node has.

Returns
The association set the node has.

Definition at line 376 of file olsr-state.h.

References m_associations.

Referenced by ns3::olsr::RoutingProtocol::AddHostNetworkAssociation(), ns3::olsr::RoutingProtocol::HnaTimerExpire(), ns3::olsr::RoutingProtocol::RoutingTableComputation(), ns3::olsr::RoutingProtocol::SendHna(), and ns3::olsr::RoutingProtocol::SetRoutingTableAssociation().

+ Here is the caller graph for this function:

◆ GetAssociationSet()

const AssociationSet & ns3::olsr::OlsrState::GetAssociationSet ( ) const
inline

Gets the association set known to the node.

Returns
The association set known to the node.

Definition at line 367 of file olsr-state.h.

References m_associationSet.

Referenced by ns3::olsr::RoutingProtocol::RoutingTableComputation().

+ Here is the caller graph for this function:

◆ GetIfaceAssocSet()

const IfaceAssocSet & ns3::olsr::OlsrState::GetIfaceAssocSet ( ) const
inline

Gets the interface association set.

Returns
The interface association set.

Definition at line 325 of file olsr-state.h.

References m_ifaceAssocSet.

Referenced by ns3::olsr::RoutingProtocol::RoutingTableComputation().

+ Here is the caller graph for this function:

◆ GetIfaceAssocSetMutable()

IfaceAssocSet & ns3::olsr::OlsrState::GetIfaceAssocSetMutable ( )
inline

Gets a mutable reference to the interface association set.

Returns
The interface association set.

Definition at line 334 of file olsr-state.h.

References m_ifaceAssocSet.

Referenced by ns3::olsr::RoutingProtocol::ProcessMid().

+ Here is the caller graph for this function:

◆ GetLinks()

const LinkSet & ns3::olsr::OlsrState::GetLinks ( ) const
inline

Gets the Link set.

Returns
The Link set.

Definition at line 247 of file olsr-state.h.

References m_linkSet.

Referenced by ns3::olsr::RoutingProtocol::LinkTupleUpdated(), ns3::olsr::RoutingProtocol::PopulateTwoHopNeighborSet(), ns3::olsr::RoutingProtocol::ProcessHello(), ns3::olsr::RoutingProtocol::RoutingTableComputation(), and ns3::olsr::RoutingProtocol::SendHello().

+ Here is the caller graph for this function:

◆ GetMprSelectors()

const MprSelectorSet & ns3::olsr::OlsrState::GetMprSelectors ( ) const
inline

Gets the MPR selectors.

Returns
The MPR selectors.

Definition at line 53 of file olsr-state.h.

References m_mprSelectorSet.

Referenced by ns3::olsr::RoutingProtocol::GetMprSelectors(), ns3::olsr::RoutingProtocol::SendTc(), and ns3::olsr::RoutingProtocol::TcTimerExpire().

+ Here is the caller graph for this function:

◆ GetMprSet()

MprSet ns3::olsr::OlsrState::GetMprSet ( ) const

Gets the MPR set.

Returns
The MPR set.

Definition at line 261 of file olsr-state.cc.

References m_mprSet.

Referenced by ns3::olsr::RoutingProtocol::GetMprSet().

+ Here is the caller graph for this function:

◆ GetNeighbors() [1/2]

NeighborSet & ns3::olsr::OlsrState::GetNeighbors ( )
inline

Gets the neighbor set.

Returns
The neighbor set.

Definition at line 104 of file olsr-state.h.

References m_neighborSet.

◆ GetNeighbors() [2/2]

const NeighborSet & ns3::olsr::OlsrState::GetNeighbors ( ) const
inline

Gets the neighbor set.

Returns
The neighbor set.

Definition at line 95 of file olsr-state.h.

References m_neighborSet.

Referenced by ns3::olsr::RoutingProtocol::Dump(), ns3::olsr::RoutingProtocol::GetNeighbors(), ns3::olsr::RoutingProtocol::MprComputation(), ns3::olsr::RoutingProtocol::ProcessHello(), ns3::olsr::RoutingProtocol::ProcessMid(), ns3::olsr::RoutingProtocol::RoutingTableComputation(), and ns3::olsr::RoutingProtocol::SendHello().

+ Here is the caller graph for this function:

◆ GetTopologySet()

const TopologySet & ns3::olsr::OlsrState::GetTopologySet ( ) const
inline

Gets the topology set.

Returns
The topology set.

Definition at line 283 of file olsr-state.h.

References m_topologySet.

Referenced by ns3::olsr::RoutingProtocol::GetTopologySet(), ns3::olsr::RoutingProtocol::ProcessTc(), and ns3::olsr::RoutingProtocol::RoutingTableComputation().

+ Here is the caller graph for this function:

◆ GetTwoHopNeighbors() [1/2]

TwoHopNeighborSet & ns3::olsr::OlsrState::GetTwoHopNeighbors ( )
inline

Gets the 2-hop neighbor set.

Returns
The 2-hop neighbor set.

Definition at line 163 of file olsr-state.h.

References m_twoHopNeighborSet.

◆ GetTwoHopNeighbors() [2/2]

const TwoHopNeighborSet & ns3::olsr::OlsrState::GetTwoHopNeighbors ( ) const
inline

Gets the 2-hop neighbor set.

Returns
The 2-hop neighbor set.

Definition at line 154 of file olsr-state.h.

References m_twoHopNeighborSet.

Referenced by ns3::olsr::RoutingProtocol::Degree(), ns3::olsr::RoutingProtocol::Dump(), ns3::olsr::RoutingProtocol::GetTwoHopNeighbors(), ns3::olsr::RoutingProtocol::MprComputation(), ns3::olsr::RoutingProtocol::ProcessHello(), ns3::olsr::RoutingProtocol::ProcessMid(), and ns3::olsr::RoutingProtocol::RoutingTableComputation().

+ Here is the caller graph for this function:

◆ InsertAssociation()

void ns3::olsr::OlsrState::InsertAssociation ( const Association & tuple)

Inserts an association tuple.

Parameters
tupleThe tuple to insert.

Definition at line 530 of file olsr-state.cc.

References m_associations.

Referenced by ns3::olsr::RoutingProtocol::AddHostNetworkAssociation().

+ Here is the caller graph for this function:

◆ InsertAssociationTuple()

void ns3::olsr::OlsrState::InsertAssociationTuple ( const AssociationTuple & tuple)

Inserts a known association tuple.

Parameters
tupleThe tuple to insert.

Definition at line 511 of file olsr-state.cc.

References m_associationSet.

Referenced by ns3::olsr::RoutingProtocol::AddAssociationTuple().

+ Here is the caller graph for this function:

◆ InsertDuplicateTuple()

void ns3::olsr::OlsrState::InsertDuplicateTuple ( const DuplicateTuple & tuple)

Inserts a duplicate tuple.

Parameters
tupleThe tuple to insert.

Definition at line 295 of file olsr-state.cc.

References m_duplicateSet.

Referenced by ns3::olsr::RoutingProtocol::AddDuplicateTuple().

+ Here is the caller graph for this function:

◆ InsertIfaceAssocTuple()

void ns3::olsr::OlsrState::InsertIfaceAssocTuple ( const IfaceAssocTuple & tuple)

Inserts a interface association tuple.

Parameters
tupleThe tuple to insert.

Definition at line 460 of file olsr-state.cc.

References m_ifaceAssocSet.

Referenced by ns3::olsr::RoutingProtocol::AddIfaceAssocTuple().

+ Here is the caller graph for this function:

◆ InsertLinkTuple()

LinkTuple & ns3::olsr::OlsrState::InsertLinkTuple ( const LinkTuple & tuple)

Inserts a link tuple.

Parameters
tupleThe tuple to insert.
Returns
A reference to the inserted tuple.

Definition at line 349 of file olsr-state.cc.

References m_linkSet.

Referenced by ns3::olsr::RoutingProtocol::LinkSensing().

+ Here is the caller graph for this function:

◆ InsertMprSelectorTuple()

void ns3::olsr::OlsrState::InsertMprSelectorTuple ( const MprSelectorTuple & tuple)

Inserts a MPR selector tuple.

Parameters
tupleThe MPR selector tuple.

Definition at line 69 of file olsr-state.cc.

References m_mprSelectorSet.

Referenced by ns3::olsr::RoutingProtocol::AddMprSelectorTuple().

+ Here is the caller graph for this function:

◆ InsertNeighborTuple()

void ns3::olsr::OlsrState::InsertNeighborTuple ( const NeighborTuple & tuple)

Inserts a neighbor tuple.

Parameters
tupleThe neighbor tuple.

Definition at line 161 of file olsr-state.cc.

References m_neighborSet, and ns3::olsr::NeighborTuple::neighborMainAddr.

Referenced by ns3::olsr::RoutingProtocol::AddNeighborTuple().

+ Here is the caller graph for this function:

◆ InsertTopologyTuple()

void ns3::olsr::OlsrState::InsertTopologyTuple ( const TopologyTuple & tuple)

Inserts a topology tuple.

Parameters
tupleThe tuple to insert.

Definition at line 413 of file olsr-state.cc.

References m_topologySet.

Referenced by ns3::olsr::RoutingProtocol::AddTopologyTuple().

+ Here is the caller graph for this function:

◆ InsertTwoHopNeighborTuple()

void ns3::olsr::OlsrState::InsertTwoHopNeighborTuple ( const TwoHopNeighborTuple & tuple)

Inserts a 2-hop neighbor tuple.

Parameters
tupleThe 2-hop neighbor tuple.

Definition at line 240 of file olsr-state.cc.

References m_twoHopNeighborSet.

Referenced by ns3::olsr::RoutingProtocol::AddTwoHopNeighborTuple().

+ Here is the caller graph for this function:

◆ PrintMprSelectorSet()

std::string ns3::olsr::OlsrState::PrintMprSelectorSet ( ) const

Prints the MPR selector sets.

Returns
a string with the output data.

Definition at line 75 of file olsr-state.cc.

References m_mprSelectorSet.

Referenced by ns3::olsr::RoutingProtocol::PopulateMprSelectorSet().

+ Here is the caller graph for this function:

◆ SetMprSet()

void ns3::olsr::OlsrState::SetMprSet ( MprSet mprSet)

Sets the MPR set to the one specified.

Parameters
mprSetThe new MPR set.

Definition at line 255 of file olsr-state.cc.

References m_mprSet.

Referenced by ns3::olsr::RoutingProtocol::MprComputation().

+ Here is the caller graph for this function:

Member Data Documentation

◆ m_associations

Associations ns3::olsr::OlsrState::m_associations
protected

The node's local Host Network Associations that will be advertised using HNA messages.

Definition at line 39 of file olsr-state.h.

Referenced by EraseAssociation(), GetAssociations(), and InsertAssociation().

◆ m_associationSet

AssociationSet ns3::olsr::OlsrState::m_associationSet
protected

Association Set (RFC 3626 , section12.2).

Associations obtained from HNA messages generated by other nodes.

Definition at line 37 of file olsr-state.h.

Referenced by EraseAssociationTuple(), FindAssociationTuple(), GetAssociationSet(), and InsertAssociationTuple().

◆ m_duplicateSet

DuplicateSet ns3::olsr::OlsrState::m_duplicateSet
protected

Duplicate Set (RFC 3626 , section 3.4).

Definition at line 35 of file olsr-state.h.

Referenced by EraseDuplicateTuple(), FindDuplicateTuple(), and InsertDuplicateTuple().

◆ m_ifaceAssocSet

IfaceAssocSet ns3::olsr::OlsrState::m_ifaceAssocSet
protected

◆ m_linkSet

LinkSet ns3::olsr::OlsrState::m_linkSet
protected

Link Set (RFC 3626 , section 4.2.1).

Definition at line 29 of file olsr-state.h.

Referenced by EraseLinkTuple(), FindLinkTuple(), FindSymLinkTuple(), GetLinks(), and InsertLinkTuple().

◆ m_mprSelectorSet

MprSelectorSet ns3::olsr::OlsrState::m_mprSelectorSet
protected

◆ m_mprSet

MprSet ns3::olsr::OlsrState::m_mprSet
protected

MPR Set (RFC 3626 , section 4.3.3).

Definition at line 33 of file olsr-state.h.

Referenced by FindMprAddress(), GetMprSet(), and SetMprSet().

◆ m_neighborSet

NeighborSet ns3::olsr::OlsrState::m_neighborSet
protected

◆ m_topologySet

TopologySet ns3::olsr::OlsrState::m_topologySet
protected

◆ m_twoHopNeighborSet

TwoHopNeighborSet ns3::olsr::OlsrState::m_twoHopNeighborSet
protected

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