DESERT 3.5.1
Loading...
Searching...
No Matches
UwMultiPhyControl Class Reference

#include <uwmulti-multiphy-controller.h>

Inheritance diagram for UwMultiPhyControl:
Collaboration diagram for UwMultiPhyControl:

Classes

class  ProbeTimer
 
class  ResilienceTimer
 

Public Member Functions

 UwMultiPhyControl ()
 
virtual ~UwMultiPhyControl ()
 
virtual int command (int, const char *const *)
 
void recv (Packet *p)
 
void recv (Packet *p, int idSrc)
 

Private Member Functions

void initialize ()
 
int getBestMacID (int trafficType, int remoteIP)
 
void updateAvailability (RemoteConnection c, LinkStatus status)
 
void sendPing (RemoteConnection c)
 
void recvFromUpperLayers (Packet *p)
 
void recvFromLowerLayers (Packet *p, int macID)
 

Private Attributes

int debug_
 
int localIP
 
std::vector< int > macIDs
 
std::queue< Packet * > packet_queue
 
std::map< int, double > resilienceTimeouts
 
std::map< RemoteConnection, ResilienceTimerresilienceTimers
 
std::map< int, double > probeTimeouts
 
std::map< RemoteConnection, ProbeTimerprobeTimers
 
PriorityMap priorityMap
 
std::map< RemoteConnection, int > linkStatuses
 
std::map< int, int > macResilience
 
std::map< int, int > macTclIdLayerId
 

Detailed Description

Class used to represents the UwMultiPhyControl layer of a node.

Definition at line 177 of file uwmulti-multiphy-controller.h.

Constructor & Destructor Documentation

◆ UwMultiPhyControl()

UwMultiPhyControl::UwMultiPhyControl ( )

Constructor of UwMultiPhy class.

Definition at line 128 of file uwmulti-multiphy-controller.cpp.

◆ ~UwMultiPhyControl()

virtual UwMultiPhyControl::~UwMultiPhyControl ( )
inlinevirtual

Destructor of UwMultiPhy class.

Definition at line 231 of file uwmulti-multiphy-controller.h.

Member Function Documentation

◆ command()

int UwMultiPhyControl::command ( int  argc,
const char *const *  argv 
)
virtual

Definition at line 137 of file uwmulti-multiphy-controller.cpp.

◆ getBestMacID()

int UwMultiPhyControl::getBestMacID ( int  trafficType,
int  remoteIP 
)
private

Definition at line 524 of file uwmulti-multiphy-controller.cpp.

◆ initialize()

void UwMultiPhyControl::initialize ( )
private

Definition at line 224 of file uwmulti-multiphy-controller.cpp.

◆ recv() [1/2]

void UwMultiPhyControl::recv ( Packet *  p)

Definition at line 264 of file uwmulti-multiphy-controller.cpp.

◆ recv() [2/2]

void UwMultiPhyControl::recv ( Packet *  p,
int  idSrc 
)

Definition at line 270 of file uwmulti-multiphy-controller.cpp.

◆ recvFromLowerLayers()

void UwMultiPhyControl::recvFromLowerLayers ( Packet *  p,
int  macID 
)
private

Definition at line 283 of file uwmulti-multiphy-controller.cpp.

◆ recvFromUpperLayers()

void UwMultiPhyControl::recvFromUpperLayers ( Packet *  p)
private

Definition at line 376 of file uwmulti-multiphy-controller.cpp.

◆ sendPing()

void UwMultiPhyControl::sendPing ( RemoteConnection  c)
private

Definition at line 433 of file uwmulti-multiphy-controller.cpp.

◆ updateAvailability()

void UwMultiPhyControl::updateAvailability ( RemoteConnection  c,
LinkStatus  status 
)
private

Definition at line 483 of file uwmulti-multiphy-controller.cpp.

Member Data Documentation

◆ debug_

int UwMultiPhyControl::debug_
private

Definition at line 179 of file uwmulti-multiphy-controller.h.

◆ linkStatuses

std::map<RemoteConnection, int> UwMultiPhyControl::linkStatuses
private

Definition at line 202 of file uwmulti-multiphy-controller.h.

◆ localIP

int UwMultiPhyControl::localIP
private

Definition at line 182 of file uwmulti-multiphy-controller.h.

◆ macIDs

std::vector<int> UwMultiPhyControl::macIDs
private

Definition at line 183 of file uwmulti-multiphy-controller.h.

◆ macResilience

std::map<int, int> UwMultiPhyControl::macResilience
private

<macID, resilience> where resilience score enstablish an order across local MAC layers: if a less robust one is LINK_OK all higher ones will be as well

Definition at line 207 of file uwmulti-multiphy-controller.h.

◆ macTclIdLayerId

std::map<int, int> UwMultiPhyControl::macTclIdLayerId
private

Definition at line 209 of file uwmulti-multiphy-controller.h.

◆ packet_queue

std::queue<Packet*> UwMultiPhyControl::packet_queue
private

Definition at line 185 of file uwmulti-multiphy-controller.h.

◆ priorityMap

PriorityMap UwMultiPhyControl::priorityMap
private

Definition at line 200 of file uwmulti-multiphy-controller.h.

◆ probeTimeouts

std::map<int, double> UwMultiPhyControl::probeTimeouts
private

Definition at line 195 of file uwmulti-multiphy-controller.h.

◆ probeTimers

std::map<RemoteConnection, ProbeTimer> UwMultiPhyControl::probeTimers
private

Definition at line 196 of file uwmulti-multiphy-controller.h.

◆ resilienceTimeouts

std::map<int, double> UwMultiPhyControl::resilienceTimeouts
private

Definition at line 189 of file uwmulti-multiphy-controller.h.

◆ resilienceTimers

std::map<RemoteConnection, ResilienceTimer> UwMultiPhyControl::resilienceTimers
private

Definition at line 190 of file uwmulti-multiphy-controller.h.


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