![]() |
User Manual, Developers Guide and API Documentation |
![]() |
#include <scheduler/harq/HARQInterface.hpp>

Public Types | |
| typedef std::list < DecodeStatusContainerEntry > | DecodeStatusContainer |
| typedef std::pair < wns::scheduler::SchedulingTimeSlotPtr, TimeSlotInfo > | DecodeStatusContainerEntry |
Public Member Functions | |
| virtual DecodeStatusContainer | decode ()=0 |
| virtual wns::scheduler::SchedulingTimeSlotPtr | getNextRetransmission (wns::scheduler::UserID user, int processID)=0 |
| Returns the next HARQ Retransmission block and removes it from the pending retransmission list. | |
| virtual int | getNumberOfPeerRetransmissions (wns::scheduler::UserID peer, int processID) const =0 |
| Return the number of retransmissions that are pending for a peer Intended for uplink master scheduling. | |
| virtual int | getNumberOfRetransmissions (wns::scheduler::UserID, int processID)=0 |
| virtual std::list< int > | getPeerProcessesWithRetransmissions (wns::scheduler::UserID peer) const =0 |
| virtual wns::scheduler::UserSet | getPeersWithPendingRetransmissions () const =0 |
| Returns the peers that have pending retransmissions Intended for uplink master scheduling. | |
| virtual std::list< int > | getProcessesWithRetransmissions (wns::scheduler::UserID peer) const =0 |
| virtual wns::scheduler::UserSet | getUsersWithRetransmissions () const =0 |
| virtual bool | hasFreeReceiverProcess (wns::scheduler::UserID peer)=0 |
| virtual bool | hasFreeSenderProcess (wns::scheduler::UserID peer)=0 |
| virtual void | onTimeSlotReceived (const wns::scheduler::SchedulingTimeSlotPtr &, TimeSlotInfo info)=0 |
| Called by the scheduler when a SchedulingTimeSlot is received from the peer. | |
| virtual wns::scheduler::SchedulingTimeSlotPtr | peekNextRetransmission (wns::scheduler::UserID user, int processID) const =0 |
| Returns the next HARQ Retransmission block, but keeps it in the pending retransmission list. | |
| virtual void | schedulePeerRetransmissions (wns::scheduler::UserID peer, int processID)=0 |
| virtual void | sendPendingFeedback ()=0 |
| Send HARQ feedback that was delayed. Especially needed for TDD. Triggered by TimingScheduler via ResourceScheduler. | |
| virtual void | setDownlinkHARQ (HARQInterface *downlinkHARQ)=0 |
| Set a downlink HARQ. Probably only applicable in uplink master schedulers. | |
| STATIC_FACTORY_DEFINE (HARQInterface, wns::PyConfigViewCreator) | |
| virtual void | storeSchedulingTimeSlot (long int transportBlockID, const wns::scheduler::SchedulingTimeSlotPtr &)=0 |
| Called by the scheduler after the scheduling step has finished. | |
| virtual | ~HARQInterface () |
Classes | |
| class | TimeSlotInfo |
Definition at line 38 of file HARQInterface.hpp.
| typedef std::list<DecodeStatusContainerEntry> wns::scheduler::harq::HARQInterface::DecodeStatusContainer |
Definition at line 54 of file HARQInterface.hpp.
| typedef std::pair<wns::scheduler::SchedulingTimeSlotPtr, TimeSlotInfo> wns::scheduler::harq::HARQInterface::DecodeStatusContainerEntry |
Definition at line 53 of file HARQInterface.hpp.
| virtual wns::scheduler::harq::HARQInterface::~HARQInterface | ( | ) | [inline, virtual] |
Definition at line 56 of file HARQInterface.hpp.
| virtual DecodeStatusContainer wns::scheduler::harq::HARQInterface::decode | ( | ) | [pure virtual] |
| virtual wns::scheduler::SchedulingTimeSlotPtr wns::scheduler::harq::HARQInterface::getNextRetransmission | ( | wns::scheduler::UserID | user, | |
| int | processID | |||
| ) | [pure virtual] |
No matter which size [bits]. No matter which PhyMode. The order is defined internally (FCFS).
Implemented in wns::scheduler::harq::HARQ, wns::scheduler::harq::HARQRetransmissionProxy, and wns::scheduler::harq::NoHARQ.
| virtual int wns::scheduler::harq::HARQInterface::getNumberOfPeerRetransmissions | ( | wns::scheduler::UserID | peer, | |
| int | processID | |||
| ) | const [pure virtual] |
| virtual int wns::scheduler::harq::HARQInterface::getNumberOfRetransmissions | ( | wns::scheduler::UserID | , | |
| int | processID | |||
| ) | [pure virtual] |
| virtual std::list<int> wns::scheduler::harq::HARQInterface::getPeerProcessesWithRetransmissions | ( | wns::scheduler::UserID | peer | ) | const [pure virtual] |
| virtual wns::scheduler::UserSet wns::scheduler::harq::HARQInterface::getPeersWithPendingRetransmissions | ( | ) | const [pure virtual] |
| virtual std::list<int> wns::scheduler::harq::HARQInterface::getProcessesWithRetransmissions | ( | wns::scheduler::UserID | peer | ) | const [pure virtual] |
| virtual wns::scheduler::UserSet wns::scheduler::harq::HARQInterface::getUsersWithRetransmissions | ( | ) | const [pure virtual] |
| virtual bool wns::scheduler::harq::HARQInterface::hasFreeReceiverProcess | ( | wns::scheduler::UserID | peer | ) | [pure virtual] |
| virtual bool wns::scheduler::harq::HARQInterface::hasFreeSenderProcess | ( | wns::scheduler::UserID | peer | ) | [pure virtual] |
| virtual void wns::scheduler::harq::HARQInterface::onTimeSlotReceived | ( | const wns::scheduler::SchedulingTimeSlotPtr & | , | |
| TimeSlotInfo | info | |||
| ) | [pure virtual] |
| virtual wns::scheduler::SchedulingTimeSlotPtr wns::scheduler::harq::HARQInterface::peekNextRetransmission | ( | wns::scheduler::UserID | user, | |
| int | processID | |||
| ) | const [pure virtual] |
No matter which size [bits]. No matter which PhyMode. The order is defined internally (FCFS).
Implemented in wns::scheduler::harq::HARQ, wns::scheduler::harq::HARQRetransmissionProxy, and wns::scheduler::harq::NoHARQ.
| virtual void wns::scheduler::harq::HARQInterface::schedulePeerRetransmissions | ( | wns::scheduler::UserID | peer, | |
| int | processID | |||
| ) | [pure virtual] |
| virtual void wns::scheduler::harq::HARQInterface::sendPendingFeedback | ( | ) | [pure virtual] |
| virtual void wns::scheduler::harq::HARQInterface::setDownlinkHARQ | ( | HARQInterface * | downlinkHARQ | ) | [pure virtual] |
| wns::scheduler::harq::HARQInterface::STATIC_FACTORY_DEFINE | ( | HARQInterface | , | |
| wns::PyConfigViewCreator | ||||
| ) |
| virtual void wns::scheduler::harq::HARQInterface::storeSchedulingTimeSlot | ( | long int | transportBlockID, | |
| const wns::scheduler::SchedulingTimeSlotPtr & | ||||
| ) | [pure virtual] |
1.5.5