ns3::SatIslArbiterUnicast Class Reference

#include "satellite-isl-arbiter-unicast.h"

+ Inheritance diagram for ns3::SatIslArbiterUnicast:
+ Collaboration diagram for ns3::SatIslArbiterUnicast:

Public Member Functions

 SatIslArbiterUnicast ()
 Default constructor. More...
 
 SatIslArbiterUnicast (Ptr< Node > node)
 Constructor, without initializing the map of next hops. More...
 
 SatIslArbiterUnicast (Ptr< Node > node, std::map< uint32_t, uint32_t > nextHopMap)
 Constructor. More...
 
void AddNextHopEntry (uint32_t destinationId, uint32_t netDeviceIndex)
 Add an entry on arbiter. More...
 
int32_t Decide (int32_t sourceSatId, int32_t targetSatId, Ptr< Packet > pkt)
 Decide how to forward. More...
 
std::string StringReprOfForwardingState ()
 Unicast routing table. More...
 
- Public Member Functions inherited from ns3::SatIslArbiter
 SatIslArbiter ()
 Default constructor. More...
 
 SatIslArbiter (Ptr< Node > node)
 Constructor. More...
 
int32_t BaseDecide (Ptr< Packet > pkt, Mac48Address destination)
 Base decide how to forward. More...
 

Static Public Member Functions

static TypeId GetTypeId (void)
 
- Static Public Member Functions inherited from ns3::SatIslArbiter
static TypeId GetTypeId (void)
 

Private Attributes

std::map< uint32_t, uint32_t > m_nextHopMap
 

Additional Inherited Members

- Protected Attributes inherited from ns3::SatIslArbiter
uint32_t m_nodeId
 

Detailed Description

Definition at line 34 of file satellite-isl-arbiter-unicast.h.

Constructor & Destructor Documentation

◆ SatIslArbiterUnicast() [1/3]

ns3::SatIslArbiterUnicast::SatIslArbiterUnicast ( )

Default constructor.

Definition at line 42 of file satellite-isl-arbiter-unicast.cc.

◆ SatIslArbiterUnicast() [2/3]

ns3::SatIslArbiterUnicast::SatIslArbiterUnicast ( Ptr< Node >  node)

Constructor, without initializing the map of next hops.

Parameters
nodeThe satellite node this unicast arbiter is attached

Definition at line 50 of file satellite-isl-arbiter-unicast.cc.

◆ SatIslArbiterUnicast() [3/3]

ns3::SatIslArbiterUnicast::SatIslArbiterUnicast ( Ptr< Node >  node,
std::map< uint32_t, uint32_t >  nextHopMap 
)

Constructor.

Parameters
nodeThe satellite node this unicast arbiter is attached
nextHopThe next hop (interface ID) for each destination possible (satellite ID)

Definition at line 56 of file satellite-isl-arbiter-unicast.cc.

References m_nextHopMap.

Member Function Documentation

◆ AddNextHopEntry()

void ns3::SatIslArbiterUnicast::AddNextHopEntry ( uint32_t  destinationId,
uint32_t  netDeviceIndex 
)

Add an entry on arbiter.

Parameters
destinationIdNode ID of destination satellite
netDeviceIndexISL Net Device index

Definition at line 119 of file satellite-isl-arbiter-unicast.cc.

References m_nextHopMap.

◆ Decide()

int32_t ns3::SatIslArbiterUnicast::Decide ( int32_t  sourceSatId,
int32_t  targetSatId,
Ptr< Packet >  pkt 
)
virtual

Decide how to forward.

Implemented in subclasses

Parameters
sourceSatIdSatellite ID where the packet originated from
targetSatIdSatellite ID where the packet has to go to
pktPacket
Returns
ISL interface index, or -1 if routing failed

Implements ns3::SatIslArbiter.

Definition at line 64 of file satellite-isl-arbiter-unicast.cc.

References m_nextHopMap.

◆ GetTypeId()

TypeId ns3::SatIslArbiterUnicast::GetTypeId ( void  )
static

Definition at line 34 of file satellite-isl-arbiter-unicast.cc.

◆ StringReprOfForwardingState()

std::string ns3::SatIslArbiterUnicast::StringReprOfForwardingState ( )
virtual

Unicast routing table.

Returns
string representation of the table

Implements ns3::SatIslArbiter.

Definition at line 76 of file satellite-isl-arbiter-unicast.cc.

References m_nextHopMap, and ns3::SatIslArbiter::m_nodeId.

Member Data Documentation

◆ m_nextHopMap

std::map<uint32_t, uint32_t> ns3::SatIslArbiterUnicast::m_nextHopMap
private

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