Implementation of the bypass MAC layer.
More...
#include <maclayer.h>
|
| | MACLayer (NEMId id, PlatformServiceProvider *pPlatformService, RadioServiceProvider *pRadioServiceProvider) |
| | constructor More...
|
| |
| | ~MACLayer () |
| | destructor More...
|
| |
| void | initialize (EMANE::Registrar ®istrar) override |
| |
| void | configure (const EMANE::ConfigurationUpdate &update) override |
| |
| void | start () override |
| |
| void | stop () override |
| |
| void | destroy () override throw () |
| |
| void | processUpstreamControl (const EMANE::ControlMessages &msgs) |
| |
| void | processUpstreamPacket (const EMANE::CommonMACHeader &hdr, EMANE::UpstreamPacket &pkt, const EMANE::ControlMessages &msgs) |
| |
| void | processDownstreamControl (const EMANE::ControlMessages &msgs) |
| |
| void | processDownstreamPacket (EMANE::DownstreamPacket &pkt, const EMANE::ControlMessages &msgs) |
| |
| void | processEvent (const EMANE::EventId &id, const EMANE::Serialization &serialization) |
| |
| void | processTimedEvent (EMANE::TimerEventId eventId, const EMANE::TimePoint &timePoint, const void *arg) |
| |
| void | sendDownstreamPacket (const CommonMACHeader &hdr, DownstreamPacket &pkt, const ControlMessages &msgs=DownstreamTransport::empty) |
| |
| NEMId | getNEMId () const |
| |
| virtual void | postStart () |
| |
| virtual void | setDownstreamTransport (DownstreamTransport *pDownstreamTransport) |
| |
| void | sendDownstreamControl (const ControlMessages &msgs) |
| |
| virtual void | setUpstreamTransport (UpstreamTransport *pUpstreamTransport) |
| |
| void | sendUpstreamPacket (UpstreamPacket &pkt, const ControlMessages &msgs=empty) |
| |
| void | sendUpstreamControl (const ControlMessages &msgs) |
| |
| virtual void | processTimedEvent (TimerEventId eventId, const TimePoint &expireTime, const TimePoint &scheduleTime, const TimePoint &fireTime, const void *arg) |
| |
| BuildId | getBuildId () const |
| |
| void | setBuildId (BuildId bid) |
| |
| virtual void | processConfiguration (const ConfigurationUpdate &update) |
| |
Implementation of the bypass MAC layer.
Definition at line 52 of file models/mac/bypass/maclayer.h.
◆ MACLayer()
◆ ~MACLayer()
| EMANE::Models::Bypass::MACLayer::~MACLayer |
( |
| ) |
|
◆ configure()
◆ destroy()
| void EMANE::Models::Bypass::MACLayer::destroy |
( |
| ) |
|
| throw | ( | |
| ) | | |
|
overridevirtual |
◆ getBuildId()
Gets the application wide unique BuildId of this object.
- Returns
- the BuildId
Definition at line 34 of file buildable.inl.
◆ getNEMId()
| NEMId EMANE::NEMLayer::getNEMId |
( |
| ) |
const |
|
inlineinherited |
Get the NEM identifier.
- Returns
- NEM identifier
Definition at line 72 of file nemlayer.h.
◆ initialize()
| void EMANE::Models::Bypass::MACLayer::initialize |
( |
EMANE::Registrar & |
registrar | ) |
|
|
overridevirtual |
◆ postStart()
| virtual void EMANE::Component::postStart |
( |
| ) |
|
|
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::NEMStatefulLayer, EMANE::NEMLayerStack, EMANE::Application::NEMImpl, EMANE::Models::TDMA::BaseModel::Implementation, EMANE::Transports::Virtual::VirtualTransport, EMANE::Models::TDMA::EventScheduler, EMANE::Models::TDMA::BaseModel, EMANE::Models::PHYAPITest::ShimLayer, EMANE::Application::EventAgentManagerImpl, EMANE::Application::EventGeneratorManagerImpl, EMANE::Application::NEMManagerImpl, 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.
◆ processConfiguration()
| virtual void EMANE::RunningStateMutable::processConfiguration |
( |
const ConfigurationUpdate & |
update | ) |
|
|
inlinevirtualinherited |
◆ processDownstreamControl()
◆ processDownstreamPacket()
◆ processEvent()
◆ processTimedEvent() [1/2]
◆ processTimedEvent() [2/2]
◆ processUpstreamControl()
◆ processUpstreamPacket()
Process an upstream packet
- Parameters
-
| hdr | MAC message header |
| pkt | Upstream packet reference |
| msgs | Optional control messages |
- Note
- Control message ownership is transferred with this call. Control messages should not be accessed after this point.
Implements EMANE::MACLayerImplementor.
Definition at line 73 of file models/mac/bypass/maclayer.cc.
◆ sendDownstreamControl()
| void EMANE::UpstreamTransport::sendDownstreamControl |
( |
const ControlMessages & |
msgs | ) |
|
|
inlineinherited |
Send downstream control message
- Parameters
-
| msgs | reference to the ControlMessages |
Definition at line 44 of file upstreamtransport.inl.
◆ sendDownstreamPacket()
Sends a downstream packet
- Parameters
-
| hdr | MAC message header |
| pkt | Downstream packet reference |
| msgs | Optional control messages |
- Note
- Control message ownership is transferred with this call. Control messages should not be accessed after this point.
Definition at line 37 of file maclayerimpl.inl.
◆ sendUpstreamControl()
| void EMANE::DownstreamTransport::sendUpstreamControl |
( |
const ControlMessages & |
msgs | ) |
|
|
inlineinherited |
Send upstream control message
- Parameters
-
| msgs | Reference to the ControlMessages |
Definition at line 44 of file downstreamtransport.inl.
◆ sendUpstreamPacket()
◆ setBuildId()
| void EMANE::Buildable::setBuildId |
( |
BuildId |
bid | ) |
|
|
inlineinherited |
Sets the application wide unique BuildId of this object. Builders assign a BuildId to objects at instantiation.
- Parameters
-
- Note
- : This method is for internal framework use only.
Definition at line 40 of file buildable.inl.
◆ setDownstreamTransport()
| virtual void EMANE::UpstreamTransport::setDownstreamTransport |
( |
DownstreamTransport * |
pDownstreamTransport | ) |
|
|
inlinevirtualinherited |
◆ setUpstreamTransport()
| virtual void EMANE::DownstreamTransport::setUpstreamTransport |
( |
UpstreamTransport * |
pUpstreamTransport | ) |
|
|
inlinevirtualinherited |
◆ start()
| void EMANE::Models::Bypass::MACLayer::start |
( |
| ) |
|
|
overridevirtual |
◆ stop()
| void EMANE::Models::Bypass::MACLayer::stop |
( |
| ) |
|
|
overridevirtual |
◆ empty [1/2]
◆ empty [2/2]
◆ id_
| NEMId EMANE::NEMLayer::id_ |
|
protectedinherited |
◆ pPlatformService_
◆ pRadioService_
The documentation for this class was generated from the following files: