EMANE  1.2.1
EMANE::Models::TDMA::ReceiveManager Class Reference

Manages all receive side message processing. More...

#include <receivemanager.h>

Public Member Functions

 ReceiveManager (NEMId id, DownstreamTransport *pDownstreamTransport, LogServiceProvider *pLogService, RadioServiceProvider *pRadioService, Scheduler *pScheduler, PacketStatusPublisher *pPacketStatusPublisher, NeighborMetricManager *pNeighborMetricManager)
 
void setFragmentCheckThreshold (const std::chrono::seconds &threshold)
 
void setFragmentTimeoutThreshold (const std::chrono::seconds &threshold)
 
void setPromiscuousMode (bool bEnable)
 
void loadCurves (const std::string &sPCRFileName)
 
bool enqueue (BaseModelMessage &&baseModelMessage, const PacketInfo &pktInfo, size_t length, const TimePoint &startOfReception, const FrequencySegments &frequencySegments, const Microseconds &span, const TimePoint &beginTime, std::uint64_t u64PacketSequence)
 
void process (std::uint64_t u64AbsoluteSlotIndex)
 

Detailed Description

Manages all receive side message processing.

Support aggregate message components and fragmentation reassembly. Handles aggregation and fragmentation of inbound messages even when the radio model is configured to not aggregate or fragment transmissions.

Definition at line 69 of file receivemanager.h.

Constructor & Destructor Documentation

◆ ReceiveManager()

EMANE::Models::TDMA::ReceiveManager::ReceiveManager ( NEMId  id,
DownstreamTransport pDownstreamTransport,
LogServiceProvider pLogService,
RadioServiceProvider pRadioService,
Scheduler pScheduler,
PacketStatusPublisher pPacketStatusPublisher,
NeighborMetricManager pNeighborMetricManager 
)

Definition at line 37 of file receivemanager.cc.

Member Function Documentation

◆ enqueue()

bool EMANE::Models::TDMA::ReceiveManager::enqueue ( BaseModelMessage &&  baseModelMessage,
const PacketInfo pktInfo,
size_t  length,
const TimePoint startOfReception,
const FrequencySegments frequencySegments,
const Microseconds span,
const TimePoint beginTime,
std::uint64_t  u64PacketSequence 
)

Definition at line 80 of file receivemanager.cc.

◆ loadCurves()

void EMANE::Models::TDMA::ReceiveManager::loadCurves ( const std::string &  sPCRFileName)

Definition at line 63 of file receivemanager.cc.

◆ process()

void EMANE::Models::TDMA::ReceiveManager::process ( std::uint64_t  u64AbsoluteSlotIndex)

Definition at line 163 of file receivemanager.cc.

◆ setFragmentCheckThreshold()

void EMANE::Models::TDMA::ReceiveManager::setFragmentCheckThreshold ( const std::chrono::seconds &  threshold)

Definition at line 68 of file receivemanager.cc.

◆ setFragmentTimeoutThreshold()

void EMANE::Models::TDMA::ReceiveManager::setFragmentTimeoutThreshold ( const std::chrono::seconds &  threshold)

Definition at line 73 of file receivemanager.cc.

◆ setPromiscuousMode()

void EMANE::Models::TDMA::ReceiveManager::setPromiscuousMode ( bool  bEnable)

Definition at line 58 of file receivemanager.cc.


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