21 #ifndef SAT_FWD_LINK_SCHEDULER_DEFAULT_H
22 #define SAT_FWD_LINK_SCHEDULER_DEFAULT_H
26 #include <ns3/pointer.h>
80 double carrierBandwidthInHz);
94 virtual std::pair<Ptr<SatBbFrame>,
const Time>
GetNextFrame();
SatFwdLinkSchedulerDefault schedules BB frames for forward link.
void GetSchedulingObjects(std::vector< Ptr< SatSchedulingObject >> &output)
Gets scheduling object in sorted order according to configured sorting criteria.
virtual std::pair< Ptr< SatBbFrame >, const Time > GetNextFrame()
Get next frame to be transmitted.
void ScheduleBbFrames()
Schedule BB Frames.
void PeriodicTimerExpired()
Handles periodic timer timeouts.
Time m_schedulingStopThresholdTime
Threshold time of total transmissions in BB Frame container to stop a scheduling round.
void SendAndClearSymbolsSentStat()
Send stats and reset all the symbols sent count for each slice to zero.
SatFwdLinkSchedulerDefault()
Construct a SatFwdLinkScheduler.
Time m_schedulingStartThresholdTime
Threshold time of total transmissions in BB Frame container to trigger a scheduling round.
static TypeId GetTypeId(void)
Get the type ID.
virtual void ClearAllPackets()
Remove all packets being treated.
Ptr< SatBbFrameContainer > m_bbFrameContainer
The container for BB Frames.
~SatFwdLinkSchedulerDefault()
Destroy a SatFwdLinkScheduler.
void DoDispose(void)
Do dispose actions.
virtual TypeId GetInstanceTypeId(void) const
Get the type ID of instance.
uint32_t m_symbolsSent
The number of symbols sent for each slice during an allocation cycle.
SatFwdLinkScheduler schedules BB frames for forward link.
SatArqSequenceNumber is handling the sequence numbers for the ARQ process.