Implementation of BaseModel.
More...
#include <basemodelimpl.h>
|
| Implementation (NEMId id, PlatformServiceProvider *pPlatformServiceProvider, RadioServiceProvider *pRadioServiceProvider, Scheduler *pScheduler, QueueManager *pQueueManager, MACLayerImplementor *pRadioModel) |
|
| ~Implementation () |
|
void | initialize (Registrar ®istrar) override |
|
void | configure (const ConfigurationUpdate &update) override |
|
void | start () override |
|
void | postStart () override |
|
void | stop () override |
|
void | destroy () override throw () |
|
void | processUpstreamControl (const ControlMessages &msgs) override |
|
void | processUpstreamPacket (const CommonMACHeader &hdr, UpstreamPacket &pkt, const ControlMessages &msgs) override |
|
void | processDownstreamControl (const ControlMessages &msgs) override |
|
void | processDownstreamPacket (DownstreamPacket &pkt, const ControlMessages &msgs) override |
|
void | processEvent (const EventId &, const Serialization &) override |
|
void | processConfiguration (const ConfigurationUpdate &update) override |
|
void | notifyScheduleChange (const Frequencies &frequencies, std::uint64_t u64BandwidthHz, const Microseconds &slotDuration, const Microseconds &slotOverhead) override |
|
void | processSchedulerPacket (DownstreamPacket &pkt) override |
|
void | processSchedulerControl (const ControlMessages &msgs) override |
|
QueueInfos | getPacketQueueInfo () const override |
|
void | sendDownstreamPacket (const CommonMACHeader &hdr, DownstreamPacket &pkt, const ControlMessages &msgs=DownstreamTransport::empty) |
|
NEMId | getNEMId () const |
|
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) |
|
◆ Implementation()
◆ ~Implementation()
EMANE::Models::TDMA::BaseModel::Implementation::~Implementation |
( |
| ) |
|
◆ configure()
void EMANE::Models::TDMA::BaseModel::Implementation::configure |
( |
const ConfigurationUpdate & |
update | ) |
|
|
overridevirtual |
Configure the component.
- Parameters
-
update | Configuration update values |
- Exceptions
-
ConfigureException | thrown when a unexpected configuration item is encountered or there is a problem with the specified item value |
Implements EMANE::Component.
Definition at line 195 of file basemodelimpl.cc.
◆ destroy()
void EMANE::Models::TDMA::BaseModel::Implementation::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.
◆ getPacketQueueInfo()
◆ initialize()
void EMANE::Models::TDMA::BaseModel::Implementation::initialize |
( |
Registrar & |
registrar | ) |
|
|
overridevirtual |
◆ notifyScheduleChange()
void EMANE::Models::TDMA::BaseModel::Implementation::notifyScheduleChange |
( |
const Frequencies & |
frequencies, |
|
|
std::uint64_t |
u64BandwidthHz, |
|
|
const Microseconds & |
slotDuration, |
|
|
const Microseconds & |
slotOverhead |
|
) |
| |
|
overridevirtual |
Notifies when a schedule change occurs
- Parameters
-
frequencies | Set of frequencies used in the schedule |
u64BandwidthHz | Transceiver bandwidth |
slotDuration | Slot duration |
slotOverhead | Slot overhead |
Implements EMANE::Models::TDMA::SchedulerUser.
Definition at line 961 of file basemodelimpl.cc.
◆ postStart()
void EMANE::Models::TDMA::BaseModel::Implementation::postStart |
( |
| ) |
|
|
overridevirtual |
Hook to run any post start functionaililty. Called after all the components have been started.
Reimplemented from EMANE::Component.
Definition at line 357 of file basemodelimpl.cc.
◆ processConfiguration()
void EMANE::Models::TDMA::BaseModel::Implementation::processConfiguration |
( |
const ConfigurationUpdate & |
update | ) |
|
|
overridevirtual |
◆ processDownstreamControl()
void EMANE::Models::TDMA::BaseModel::Implementation::processDownstreamControl |
( |
const ControlMessages & |
msgs | ) |
|
|
overridevirtual |
◆ processDownstreamPacket()
◆ processEvent()
void EMANE::Models::TDMA::BaseModel::Implementation::processEvent |
( |
const EventId & |
eventId, |
|
|
const Serialization & |
serialization |
|
) |
| |
|
overridevirtual |
Process an event.
- Parameters
-
eventId | event identifier corresponding to the serialized event |
serialization | opaque event object data |
Reimplemented from EMANE::EventServiceUser.
Definition at line 911 of file basemodelimpl.cc.
◆ processSchedulerControl()
void EMANE::Models::TDMA::BaseModel::Implementation::processSchedulerControl |
( |
const ControlMessages & |
msgs | ) |
|
|
overridevirtual |
◆ processSchedulerPacket()
void EMANE::Models::TDMA::BaseModel::Implementation::processSchedulerPacket |
( |
DownstreamPacket & |
pkt | ) |
|
|
overridevirtual |
◆ processTimedEvent()
◆ processUpstreamControl()
void EMANE::Models::TDMA::BaseModel::Implementation::processUpstreamControl |
( |
const ControlMessages & |
msgs | ) |
|
|
overridevirtual |
◆ 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 440 of file basemodelimpl.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::TDMA::BaseModel::Implementation::start |
( |
| ) |
|
|
overridevirtual |
◆ stop()
void EMANE::Models::TDMA::BaseModel::Implementation::stop |
( |
| ) |
|
|
overridevirtual |
◆ empty [1/3]
◆ empty [2/3]
◆ empty [3/3]
◆ id_
NEMId EMANE::NEMLayer::id_ |
|
protectedinherited |
◆ pPlatformService_
◆ pRadioService_
The documentation for this class was generated from the following files: