33 #ifndef EMANETDMABASEMODEL_HEADER_ 34 #define EMANETDMABASEMODEL_HEADER_ 69 void start()
override;
75 void destroy()
throw()
override;
96 std::uint64_t u64BandwidthHz,
108 std::unique_ptr<Implementation> pImpl_;
114 #endif // EMANETDMABASEMODEL_HEADER_ void initialize(Registrar ®istrar) override
void processDownstreamControl(const ControlMessages &msgs) override
std::string Serialization
QueueInfos getPacketQueueInfo() const override
A Packet class that allows upstream processing to strip layer headers as the packet travels up the st...
void processConfiguration(const ConfigurationUpdate &update) override
The Registrar interface provides access to all of the emulator registrars.
std::list< const ControlMessage * > ControlMessages
void processUpstreamControl(const ControlMessages &msgs) override
void processEvent(const EventId &, const Serialization &) override
void configure(const ConfigurationUpdate &update) override
Implementation of BaseModel.
std::vector< QueueInfo > QueueInfos
Specialized packet the allows downstream processing to add layer specific headers as the packet trave...
std::set< std::uint64_t > Frequencies
std::chrono::microseconds Microseconds
void notifyScheduleChange(const Frequencies &frequencies, std::uint64_t u64BandwidthHz, const Microseconds &slotDuration, const Microseconds &slotOverhead) override
void postStart() override
void processSchedulerControl(const ControlMessages &msgs) override
The RadioServiceProvider interface provides access to radio (RF) model specific services.
Interface used by a scheduler module to communicate information with BaseModel.
Scheduler interface used by BaseModel to communicate with a scheduler module.
TDMA radio module implementation that uses specialized scheduler and queue manager modules to allow v...
Queue management interface used by BaseModel
std::vector< ConfigurationNameAnyValues > ConfigurationUpdate
void processDownstreamPacket(DownstreamPacket &pkt, const ControlMessages &msgs) override
void processUpstreamPacket(const CommonMACHeader &hdr, UpstreamPacket &pkt, const ControlMessages &msgs) override
void processSchedulerPacket(DownstreamPacket &pkt) override
BaseModel(NEMId id, PlatformServiceProvider *pPlatformServiceProvider, RadioServiceProvider *pRadioServiceProvider, Scheduler *pScheduler, QueueManager *pQueueManager)
Interface used to create a MAC layer plugin implementation.