EMANE  1.2.1
EMANE::OTAManager Class Reference

Provides OTA access to all platform NEMs and handles intra and inter platform OTA message dissemination. More...

#include <otamanager.h>

Inheritance diagram for EMANE::OTAManager:
EMANE::OTAProvider EMANE::Utils::Singleton< OTAManager >

Public Member Functions

 OTAManager ()
 
 ~OTAManager ()
 
void sendOTAPacket (NEMId id, const DownstreamPacket &pkt, const ControlMessages &msgs) const override
 
void registerOTAUser (NEMId id, OTAUser *pOTAUser) override
 
void unregisterOTAUser (NEMId id) override
 
void open (const INETAddr &otaGroupAddress, const std::string &sDevice, bool bLoopback, int iTTL, const uuid_t &uuid, size_t otaMTU, Seconds partCheckThreshold, Seconds partTimeoutThreshold)
 
void setStatPacketCountRowLimit (size_t rows)
 
void setStatEventCountRowLimit (size_t rows)
 

Static Public Member Functions

static OTAManagerinstance ()
 
static void destroy ()
 

Detailed Description

Provides OTA access to all platform NEMs and handles intra and inter platform OTA message dissemination.

Definition at line 62 of file otamanager.h.

Constructor & Destructor Documentation

◆ OTAManager()

EMANE::OTAManager::OTAManager ( )

Definition at line 106 of file otamanager.cc.

◆ ~OTAManager()

EMANE::OTAManager::~OTAManager ( )

Definition at line 116 of file otamanager.cc.

Member Function Documentation

◆ destroy()

static void EMANE::Utils::Singleton< OTAManager >::destroy ( )
inlinestaticinherited

Destroys the single instance of type T. Once destroyed it cannot be used or recreated. This is not a thread-safe method.

Definition at line 67 of file singleton.h.

◆ instance()

static OTAManager * EMANE::Utils::Singleton< OTAManager >::instance ( )
inlinestaticinherited

Provides thread-safe access to a single instance of type T. It does not provide thread-safety for T methods.

Returns
A pointer to T

Definition at line 56 of file singleton.h.

◆ open()

void EMANE::OTAManager::open ( const INETAddr otaGroupAddress,
const std::string &  sDevice,
bool  bLoopback,
int  iTTL,
const uuid_t &  uuid,
size_t  otaMTU,
Seconds  partCheckThreshold,
Seconds  partTimeoutThreshold 
)

Open the event server channel

Parameters
otaGroupAddressMulticast group address of event service OTA channel
sDeviceName of the OTA device
bLoopbackFlag indicating whether to set LOOPBACK socket option
iTTLMutlicast TTL
uuidEmulator instance UUID
otaMTUMTU to enforce. Set to 0 to disable fragmentation
partCheckThresholdRate in seconds to check if part reassembly efforts should be abandoned due to missing fragments
partTimeoutThresholdThreshold in seconds to wait for another fragment before abandoning a specific packet reassembly.

Definition at line 431 of file otamanager.cc.

◆ registerOTAUser()

void EMANE::OTAManager::registerOTAUser ( NEMId  id,
OTAUser pOTAUser 
)
overridevirtual

Register an OTA user

Parameters
idNEM identifier
pOTAUserOTAUser reference
Exceptions
OTAEceptionwhen an error occurs during unregister

Implements EMANE::OTAProvider.

Definition at line 409 of file otamanager.cc.

◆ sendOTAPacket()

void EMANE::OTAManager::sendOTAPacket ( NEMId  id,
const DownstreamPacket pkt,
const ControlMessages msg 
) const
overridevirtual

Send OTA packet

Parameters
idNEM identifier
pktDownstream packet
msgControl Message

Implements EMANE::OTAProvider.

Definition at line 136 of file otamanager.cc.

◆ setStatEventCountRowLimit()

void EMANE::OTAManager::setStatEventCountRowLimit ( size_t  rows)

Definition at line 131 of file otamanager.cc.

◆ setStatPacketCountRowLimit()

void EMANE::OTAManager::setStatPacketCountRowLimit ( size_t  rows)

Definition at line 126 of file otamanager.cc.

◆ unregisterOTAUser()

void EMANE::OTAManager::unregisterOTAUser ( NEMId  id)
overridevirtual

Unregister an OTA user

Parameters
idNEM identifier
Exceptions
OTAEceptionwhen an error occurs during unregister

Implements EMANE::OTAProvider.

Definition at line 421 of file otamanager.cc.


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