EMANE
1.2.1
|
Queue management interface used by BaseModel More...
#include <queuemanager.h>
Public Member Functions | |
virtual | ~QueueManager () |
virtual size_t | enqueue (std::uint8_t u8QueueIndex, DownstreamPacket &&pkt)=0 |
virtual std::tuple< EMANE::Models::TDMA::MessageComponents, size_t > | dequeue (std::uint8_t u8QueueIndex, size_t length, NEMId destination)=0 |
virtual QueueInfos | getPacketQueueInfo () const =0 |
virtual void | initialize (Registrar ®istrar)=0 |
virtual void | configure (const ConfigurationUpdate &update)=0 |
virtual void | start ()=0 |
virtual void | postStart () |
virtual void | stop ()=0 |
virtual void | destroy ()=0 throw () |
virtual void | processConfiguration (const ConfigurationUpdate &update) |
void | setPacketStatusPublisher (PacketStatusPublisher *pPacketStatusPublisher) |
Protected Member Functions | |
QueueManager (NEMId id, PlatformServiceProvider *pPlatformServiceProvider) | |
Protected Attributes | |
NEMId | id_ |
PlatformServiceProvider * | pPlatformService_ |
PacketStatusPublisher * | pPacketStatusPublisher_ |
Queue management interface used by BaseModel
Definition at line 57 of file queuemanager.h.
|
inlinevirtual |
Destroys an instance.
Definition at line 66 of file queuemanager.h.
|
inlineprotected |
Creates an instance.
Definition at line 120 of file queuemanager.h.
|
pure virtualinherited |
Configure the component.
update | Configuration update values |
ConfigureException | thrown when a unexpected configuration item is encountered or there is a problem with the specified item value |
Implemented in EMANE::Models::IEEE80211ABG::MACLayer, EMANE::Models::RFPipe::MACLayer, EMANE::Application::NEMImpl, EMANE::NEMStatefulLayer, EMANE::NEMLayerStack, EMANE::Models::TDMA::BaseModel::Implementation, EMANE::Models::Bypass::MACLayer, EMANE::Models::Bypass::PHYLayer, EMANE::Transports::Virtual::VirtualTransport, EMANE::Transports::Raw::RawTransport, EMANE::Models::TDMA::EventScheduler, EMANE::Models::TDMA::BaseModel, EMANE::FrameworkPHY, EMANE::Application::NEMManagerImpl, EMANE::Models::PHYAPITest::ShimLayer, EMANE::Application::EventAgentManagerImpl, EMANE::Application::EventGeneratorManagerImpl, EMANE::Agents::GPSDLocation::Agent, EMANE::Generators::EEL::Generator, EMANE::Models::CommEffect::Shim, EMANE::Models::TimingAnalysis::ShimLayer, EMANE::Application::TransportAdapterImpl, EMANE::MACLayer, EMANE::PHYLayer, EMANE::ShimLayer, EMANE::Application::TransportManagerImpl, EMANE::TransportLayer, and EMANE::Models::TDMA::BasicQueueManager.
|
pure virtual |
Dequeues a specified number of bytes from a specified queue.
u8QueueIndex | Queue index of target queue |
length | length to dequeue in bytes |
destination | NEM destination to dequeue, 0 indicates any NEM. |
Implemented in EMANE::Models::TDMA::BasicQueueManager.
|
pure virtualinherited |
Destroy the component.
Implemented in EMANE::Models::IEEE80211ABG::MACLayer, EMANE::Models::RFPipe::MACLayer, EMANE::Application::NEMImpl, EMANE::NEMStatefulLayer, EMANE::NEMLayerStack, EMANE::Models::TDMA::BaseModel::Implementation, EMANE::Transports::Virtual::VirtualTransport, EMANE::Models::Bypass::MACLayer, EMANE::Models::Bypass::PHYLayer, EMANE::Models::TDMA::EventScheduler, EMANE::Transports::Raw::RawTransport, EMANE::Models::TDMA::BaseModel, EMANE::Application::NEMManagerImpl, EMANE::Models::PHYAPITest::ShimLayer, EMANE::Application::EventAgentManagerImpl, EMANE::Application::EventGeneratorManagerImpl, EMANE::FrameworkPHY, EMANE::Application::TransportAdapterImpl, EMANE::Agents::GPSDLocation::Agent, EMANE::Generators::EEL::Generator, EMANE::MACLayer, EMANE::PHYLayer, EMANE::ShimLayer, EMANE::Models::CommEffect::Shim, EMANE::Models::TimingAnalysis::ShimLayer, EMANE::Application::TransportManagerImpl, EMANE::TransportLayer, and EMANE::Models::TDMA::BasicQueueManager.
|
pure virtual |
Enqueues a packet in to a specified queue.
u8QueueIndex | Queue index of target queue |
pkt | Packet to enqueue |
Implemented in EMANE::Models::TDMA::BasicQueueManager.
|
pure virtual |
Gets queue status.
Implemented in EMANE::Models::TDMA::BasicQueueManager.
|
pure virtualinherited |
Initialize the component.
InitializeException | thrown when an error is encountered during initialization |
Implemented in EMANE::Models::IEEE80211ABG::MACLayer, EMANE::Models::RFPipe::MACLayer, EMANE::Application::NEMImpl, EMANE::NEMStatefulLayer, EMANE::NEMLayerStack, EMANE::Models::TDMA::BaseModel::Implementation, EMANE::Models::Bypass::MACLayer, EMANE::Models::Bypass::PHYLayer, EMANE::Transports::Virtual::VirtualTransport, EMANE::NEMQueuedLayer, EMANE::Transports::Raw::RawTransport, EMANE::Models::TDMA::EventScheduler, EMANE::Models::TDMA::BaseModel, EMANE::FrameworkPHY, EMANE::Application::NEMManagerImpl, EMANE::Models::PHYAPITest::ShimLayer, EMANE::Application::EventAgentManagerImpl, EMANE::Application::EventGeneratorManagerImpl, EMANE::Agents::GPSDLocation::Agent, EMANE::Generators::EEL::Generator, EMANE::Models::CommEffect::Shim, EMANE::Models::TimingAnalysis::ShimLayer, EMANE::Application::TransportAdapterImpl, EMANE::MACLayer, EMANE::PHYLayer, EMANE::ShimLayer, EMANE::Application::TransportManagerImpl, EMANE::TransportLayer, and EMANE::Models::TDMA::BasicQueueManager.
|
inlinevirtualinherited |
Hook to run any post start functionaililty. Called after all the components have been started.
Reimplemented in EMANE::Models::IEEE80211ABG::MACLayer, EMANE::Models::RFPipe::MACLayer, EMANE::Application::NEMImpl, EMANE::NEMStatefulLayer, EMANE::NEMLayerStack, EMANE::Models::TDMA::BaseModel::Implementation, EMANE::Transports::Virtual::VirtualTransport, EMANE::Models::TDMA::EventScheduler, EMANE::Models::TDMA::BaseModel, EMANE::Application::NEMManagerImpl, EMANE::Models::PHYAPITest::ShimLayer, EMANE::Application::EventAgentManagerImpl, EMANE::Application::EventGeneratorManagerImpl, EMANE::ShimLayer, EMANE::Application::TransportAdapterImpl, EMANE::MACLayer, EMANE::PHYLayer, EMANE::TransportLayer, EMANE::Application::TransportManagerImpl, and EMANE::Models::TDMA::BasicQueueManager.
Definition at line 119 of file component.h.
|
inlinevirtualinherited |
Process dynamic running-state configuration updates
update | Configuration update |
Reimplemented in EMANE::Models::IEEE80211ABG::MACLayer, EMANE::Models::RFPipe::MACLayer, EMANE::Models::TDMA::BaseModel::Implementation, EMANE::Models::TDMA::BaseModel, EMANE::NEMStatefulLayer, EMANE::NEMQueuedLayer, and EMANE::FrameworkPHY.
Definition at line 63 of file runningstatemutable.h.
|
inlineinherited |
Sets the PacketStatusPublisher
pPacketStatusPublisher | PacketStatusPublisher reference |
Definition at line 64 of file packetstatuspublisheruser.h.
|
pure virtualinherited |
Start the component.
StartException | thrown when an error is encountered during start. |
Implemented in EMANE::Models::IEEE80211ABG::MACLayer, EMANE::Models::RFPipe::MACLayer, EMANE::Application::NEMImpl, EMANE::NEMStatefulLayer, EMANE::NEMLayerStack, EMANE::Models::TDMA::BaseModel::Implementation, EMANE::Models::Bypass::MACLayer, EMANE::Models::Bypass::PHYLayer, EMANE::Transports::Virtual::VirtualTransport, EMANE::NEMQueuedLayer, EMANE::Transports::Raw::RawTransport, EMANE::Models::TDMA::EventScheduler, EMANE::Models::TDMA::BaseModel, EMANE::FrameworkPHY, EMANE::Application::NEMManagerImpl, EMANE::Models::PHYAPITest::ShimLayer, EMANE::Application::EventAgentManagerImpl, EMANE::Application::EventGeneratorManagerImpl, EMANE::Agents::GPSDLocation::Agent, EMANE::Generators::EEL::Generator, EMANE::Models::CommEffect::Shim, EMANE::Models::TimingAnalysis::ShimLayer, EMANE::Application::TransportAdapterImpl, EMANE::Application::TransportManagerImpl, EMANE::MACLayer, EMANE::PHYLayer, EMANE::ShimLayer, EMANE::TransportLayer, and EMANE::Models::TDMA::BasicQueueManager.
|
pure virtualinherited |
Stop the component.
StopException | thrown when an error is encountered during stop |
Implemented in EMANE::Models::IEEE80211ABG::MACLayer, EMANE::Models::RFPipe::MACLayer, EMANE::Application::NEMImpl, EMANE::NEMStatefulLayer, EMANE::NEMLayerStack, EMANE::Models::TDMA::BaseModel::Implementation, EMANE::Transports::Virtual::VirtualTransport, EMANE::Models::Bypass::MACLayer, EMANE::Models::Bypass::PHYLayer, EMANE::NEMQueuedLayer, EMANE::Models::TDMA::EventScheduler, EMANE::Transports::Raw::RawTransport, EMANE::Models::TDMA::BaseModel, EMANE::Application::NEMManagerImpl, EMANE::Models::PHYAPITest::ShimLayer, EMANE::Application::EventAgentManagerImpl, EMANE::Application::EventGeneratorManagerImpl, EMANE::FrameworkPHY, EMANE::Application::TransportAdapterImpl, EMANE::Agents::GPSDLocation::Agent, EMANE::Generators::EEL::Generator, EMANE::MACLayer, EMANE::PHYLayer, EMANE::Models::CommEffect::Shim, EMANE::Models::TimingAnalysis::ShimLayer, EMANE::Application::TransportManagerImpl, EMANE::ShimLayer, EMANE::TransportLayer, and EMANE::Models::TDMA::BasicQueueManager.
|
protected |
Definition at line 115 of file queuemanager.h.
|
protectedinherited |
Definition at line 70 of file packetstatuspublisheruser.h.
|
protectedinherited |
Definition at line 64 of file platformserviceuser.h.