21#ifndef SAT_FWD_LINK_SCHEDULER_SCPC_H
22#define SAT_FWD_LINK_SCHEDULER_SCPC_H
26#include "ns3/pointer.h"
72 SatScpcScheduler(Ptr<SatBbFrameConf> conf, Mac48Address address,
double carrierBandwidthInHz);
96 virtual std::pair<Ptr<SatBbFrame>,
const Time>
GetNextFrame();
SatFwdLinkScheduler()
Construct a SatFwdLinkScheduler.
void SendAndClearSymbolsSentStat()
Send stats and reset all the symbols sent count for each slice to zero.
Ptr< SatBbFrameContainer > m_bbFrameContainer
The container for BB Frames.
~SatScpcScheduler()
Destroy a SatFwdLinkScheduler.
virtual void NotifyConstructionCompleted() override
Notifier called once the ObjectBase is fully constructed.
void DoDispose(void)
Do dispose actions.
void GetSchedulingObjects(std::vector< Ptr< SatSchedulingObject > > &output)
Gets scheduling object in sorted order according to configured sorting criteria.
uint32_t m_symbolsSent
The number of symbols sent for each slice during an allocation cycle.
Time m_schedulingStartThresholdTime
Threshold time of total transmissions in BB Frame container to trigger a scheduling round.
virtual std::pair< Ptr< SatBbFrame >, const Time > GetNextFrame()
Get next frame to be transmitted.
static TypeId GetTypeId(void)
Get the type ID.
SatScpcScheduler()
Construct a SatFwdLinkScheduler.
void ScheduleBbFrames()
Schedule BB Frames.
Time m_schedulingStopThresholdTime
Threshold time of total transmissions in BB Frame container to stop a scheduling round.
SatArqSequenceNumber is handling the sequence numbers for the ARQ process.