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


Public Member Functions | |
| virtual MapInfoEntryPtr | doAdaptiveResourceScheduling (wns::scheduler::strategy::RequestForResource &request, wns::scheduler::SchedulingMapPtr schedulingMap) |
| performs resource scheduling including DSA, AMC and APC algorithms | |
| virtual dsastrategy::DSAStrategyInterface * | getDSAStrategy () |
| MapInfoCollectionPtr | getMapInfo () const |
| get scheduling result. For sending Maps. Called from MapHandler. The caller must do colleagues.strategy->clearMap() afterwards. Used by LTE. | |
| wns::scheduler::PowerCapabilities | getPowerCapabilities (const UserID user) const |
| retrieve info about a peer user's power capabilities (for master UL scheduling) | |
| virtual float | getResourceUsage () const |
| obtain percentage of resources allocated during last round. Default Implementation only. | |
| virtual wns::scheduler::SchedulerSpotType | getSchedulerSpotType () const |
| there are three positions for the scheduler... | |
| virtual bool | isNewStrategy () const |
| indicates if strategy is of 'old' (before 2009) or 'new' type (>=2009). Used in assertions. | |
| virtual bool | isTx () const |
| indicates type of ResourceScheduler (TX or RX). Only used in WinProSt. | |
| virtual void | onColleaguesKnown () |
| can be overloaded by derived classes to perform initialization code. The derived method MUST call this base class method first. | |
| virtual void | setColleagues (queue::QueueInterface *_queue, grouper::GroupingProviderInterface *_grouper, RegistryProxyInterface *_registry, wns::scheduler::harq::HARQInterface *_harq) |
| Colleagues are required to communicate with the environment. | |
| virtual void | setFriends (wns::service::phy::ofdma::BFInterface *_ofdmaProvider) |
| called in specialized scheduler (WinProSt,WiMAC,...) for defining friends | |
| Strategy (const wns::pyconfig::View &config) | |
| virtual | ~Strategy () |
| cleanup. The derived method MUST call this base class method at the end. | |
Protected Member Functions | |
| virtual wns::service::phy::phymode::PhyModeInterfacePtr | getBestPhyMode (const wns::Ratio &sinr) const |
| return decision of the Link Adaptation algorithm or the fixed, predefined phymode | |
| virtual SchedulerStatePtr | getNewSchedulerState () |
| The strategies need a new state. | |
| virtual SchedulerStatePtr | getSchedulerState () |
| Get the scheduler state here. | |
| wns::Power | getTxPower () const |
| helper method to support the old scheduler strategies. | |
| virtual bool | groupingRequired () const |
| virtual SchedulerStatePtr | revolveSchedulerState (const StrategyInput &strategyInput) |
| The state is revolved before a new doStartScheduling() call. | |
| virtual StrategyResult | startScheduling (const StrategyInput &StrategyInput) |
| (for AP) determines the order of PDUs in the given full set of resources. calls doStartScheduling() of derived class. | |
Protected Attributes | |
| struct wns::scheduler::strategy::Strategy::Colleagues | colleagues |
| struct wns::scheduler::strategy::Strategy::Friends | friends |
| wns::logger::Logger | logger |
| Logger. | |
| wns::pyconfig::View | pyConfig |
| Python Config View. | |
Private Attributes | |
| SchedulerStatePtr | schedulerState |
Classes | |
| struct | Colleagues |
| struct | Friends |
Definition at line 89 of file Strategy.hpp.
| Strategy::Strategy | ( | const wns::pyconfig::View & | config | ) |
Definition at line 37 of file Strategy.cpp.
| Strategy::~Strategy | ( | ) | [virtual] |
Definition at line 81 of file Strategy.cpp.
| MapInfoEntryPtr Strategy::doAdaptiveResourceScheduling | ( | wns::scheduler::strategy::RequestForResource & | request, | |
| wns::scheduler::SchedulingMapPtr | schedulingMap | |||
| ) | [virtual] |
Definition at line 558 of file Strategy.cpp.
| wns::service::phy::phymode::PhyModeInterfacePtr Strategy::getBestPhyMode | ( | const wns::Ratio & | sinr | ) | const [protected, virtual] |
Definition at line 877 of file Strategy.cpp.
| virtual dsastrategy::DSAStrategyInterface* wns::scheduler::strategy::Strategy::getDSAStrategy | ( | ) | [inline, virtual] |
Definition at line 141 of file Strategy.hpp.
| MapInfoCollectionPtr Strategy::getMapInfo | ( | ) | const [virtual] |
Implements wns::scheduler::strategy::StrategyInterface.
Definition at line 282 of file Strategy.cpp.
| SchedulerStatePtr Strategy::getNewSchedulerState | ( | ) | [protected, virtual] |
Implements wns::scheduler::strategy::StrategyInterface.
Definition at line 249 of file Strategy.cpp.
| wns::scheduler::PowerCapabilities Strategy::getPowerCapabilities | ( | const UserID | user | ) | const [virtual] |
Implements wns::scheduler::strategy::StrategyInterface.
Definition at line 296 of file Strategy.cpp.
| float Strategy::getResourceUsage | ( | ) | const [virtual] |
Implements wns::scheduler::strategy::StrategyInterface.
Reimplemented in wns::scheduler::strategy::StaticPriority.
Definition at line 944 of file Strategy.cpp.
| wns::scheduler::SchedulerSpotType Strategy::getSchedulerSpotType | ( | ) | const [virtual] |
Implements wns::scheduler::strategy::StrategyInterface.
Definition at line 895 of file Strategy.cpp.
| SchedulerStatePtr Strategy::getSchedulerState | ( | ) | [protected, virtual] |
Implements wns::scheduler::strategy::StrategyInterface.
Definition at line 275 of file Strategy.cpp.
| wns::Power Strategy::getTxPower | ( | ) | const [protected] |
return info about txPower (in slave scheduling mode)
Definition at line 915 of file Strategy.cpp.
| bool Strategy::groupingRequired | ( | ) | const [protected, virtual] |
Definition at line 964 of file Strategy.cpp.
| virtual bool wns::scheduler::strategy::Strategy::isNewStrategy | ( | ) | const [inline, virtual] |
Implements wns::scheduler::strategy::StrategyInterface.
Reimplemented in wns::scheduler::strategy::StaticPriority.
Definition at line 133 of file Strategy.hpp.
| bool Strategy::isTx | ( | ) | const [virtual] |
Implements wns::scheduler::strategy::StrategyInterface.
Definition at line 905 of file Strategy.cpp.
| void Strategy::onColleaguesKnown | ( | ) | [virtual] |
Implements wns::scheduler::strategy::StrategyInterface.
Reimplemented in wns::scheduler::strategy::StaticPriority.
Definition at line 184 of file Strategy.cpp.
| SchedulerStatePtr Strategy::revolveSchedulerState | ( | const StrategyInput & | strategyInput | ) | [protected, virtual] |
Implements wns::scheduler::strategy::StrategyInterface.
Definition at line 264 of file Strategy.cpp.
| void Strategy::setColleagues | ( | queue::QueueInterface * | _queue, | |
| grouper::GroupingProviderInterface * | _grouper, | |||
| RegistryProxyInterface * | _registry, | |||
| wns::scheduler::harq::HARQInterface * | _harq | |||
| ) | [virtual] |
Implements wns::scheduler::strategy::StrategyInterface.
Definition at line 120 of file Strategy.cpp.
| void Strategy::setFriends | ( | wns::service::phy::ofdma::BFInterface * | ) | [virtual] |
Implements wns::scheduler::strategy::StrategyInterface.
Definition at line 190 of file Strategy.cpp.
| StrategyResult Strategy::startScheduling | ( | const StrategyInput & | StrategyInput | ) | [protected, virtual] |
| StrategyInput | contains parameters set by the caller. |
Implements wns::scheduler::strategy::StrategyInterface.
Definition at line 374 of file Strategy.cpp.
struct wns::scheduler::strategy::Strategy::Colleagues wns::scheduler::strategy::Strategy::colleagues [protected] |
struct wns::scheduler::strategy::Strategy::Friends wns::scheduler::strategy::Strategy::friends [protected] |
Definition at line 189 of file Strategy.hpp.
Definition at line 187 of file Strategy.hpp.
Definition at line 197 of file Strategy.hpp.
1.5.5