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


Public Member Functions | |
| virtual wns::scheduler::PowerMap | calcULResources (const wns::scheduler::UserSet &, unsigned long int) const |
| returns information for all active uplink users about their requested share of the overall resources, the maximum number of subbands that may be allocated to them and the ul txpower they may use. | |
| virtual void | deregisterCID (wns::scheduler::ConnectionID cid, const wns::scheduler::UserID userID) |
| deregisterCID (important e.g. for Handover) | |
| virtual void | deregisterUser (const wns::scheduler::UserID userID) |
| deregisterUser (important e.g. for Handover) | |
| wns::Power | estimateInterferenceStdDeviation (const wns::scheduler::UserID user) |
| wns::scheduler::ChannelQualityOnOneSubChannel | estimateRxSINROf (const wns::scheduler::UserID user, int slot) |
| wns::scheduler::ChannelQualityOnOneSubChannel | estimateTxSINRAt (const wns::scheduler::UserID user, int slot) |
| Returns (an estimate of) the current interference level at the specified user's location. Included in this figure is everything besides the carrier signal, i.e. inter+intra cell interference and noise. This information will usually be signalled back by the mobile terminals and is needed for the correct SINR estimation when sending to a mobile terminal. By specifying the own user ID as returned by getMyUserID(), the current interference level at the own station should be returned which is also needed for SINR estimation in the receive case. This method assumes a flat channel. For frequency-selective channels better use CQI. | |
| virtual wns::scheduler::ConnectionSet | filterReachable (wns::scheduler::ConnectionSet connections, const int frameNr, bool useHARQ) |
| filters the given set of connections and return only those that can be reached in the given frame | |
| virtual wns::scheduler::UserSet | filterReachable (wns::scheduler::UserSet users, const int frameNr) |
| filters the given set of users and return only those that can be reached in the given frame | |
| virtual wns::scheduler::UserSet | filterReachable (wns::scheduler::UserSet users) |
| filters the given set of users and return only those that can be reached within the next scheduling round. Soon obsolete. Use filterReachable(UserSet users, const int frameNr) for future code. | |
| virtual wns::scheduler::UserSet | getActiveULUsers () const |
| wns::SmartPtr< const wns::service::phy::phymode::PhyModeInterface > | getBestPhyMode (const wns::Ratio &) |
| For Link Adaptation, returns the best a PHYmode for a given SINR. | |
| virtual wns::scheduler::ChannelQualitiesOnAllSubBandsPtr | getChannelQualities4UserOnDownlink (wns::scheduler::UserID user, int frameNr) |
| virtual wns::scheduler::ChannelQualitiesOnAllSubBandsPtr | getChannelQualities4UserOnUplink (wns::scheduler::UserID user, int frameNr) |
| get the ChannelsQualities (CQI) on all the subbands of the user. Eventually for a future frameNr (prediction). | |
| wns::scheduler::ConnectionID | getCIDforPDU (const wns::ldk::CompoundPtr &compound) |
| Retrieves a scheduler internal CID from the compound. This is usually done by asking a friend FU, e.g., the classifier. | |
| virtual wns::scheduler::ConnectionList & | getCIDListForPriority (int priority) |
| get all CIds for the Priority Class (for QoS Scheduling) | |
| virtual wns::scheduler::ConnectionSet | getConnectionsForPriority (int priority) |
| retrieve a set of Connections for the same priority | |
| wns::scheduler::ConnectionVector | getConnectionsForUser (const wns::scheduler::UserID user) |
| Retrieve a list of (internal) Connection IDs that the specified user is associated with. The convention is that the strategy serves the different connections sequentially in the order they are contained in the vector. Thus, connection IDs should be ordered by descending priority, e.g. control/management connections should come first. Again, these IDs might differ externally in the system. | |
| virtual bool | getCQIAvailable () const |
| tells if CQI system is available. Doesn't mean that at this moment there is a valid CQI information. | |
| bool | getDL () const |
| true for downlink master scheduler | |
| float | getMaxDelayForCID (wns::scheduler::ConnectionID cid) |
| wns::Ratio | getMinSIRForCID (wns::scheduler::ConnectionID cid) |
| float | getMinTPForCID (wns::scheduler::ConnectionID cid) |
| wns::scheduler::UserID | getMyUserID () |
| Returns the station's own UserID. | |
| std::string | getNameForUser (const wns::scheduler::UserID user) |
| Useful for debugging/logging purposes to attach meaningful names to a user internally only known by its UserID (wns::node::Node*). | |
| virtual int | getNumberOfPriorities () |
| gets the number of priorities (for QoS Scheduling) | |
| int | getNumberOfQoSClasses () |
| gets the number of QoS classes (for QoS Scheduling) | |
| simTimeType | getOverhead (int numBursts) |
| virtual wns::service::dll::UnicastAddress | getPeerAddressForCID (wns::scheduler::ConnectionID cid) |
| determines Address of next hop | |
| wns::service::phy::phymode::PhyModeMapperInterface * | getPhyModeMapper () const |
| Returns the PhyModeMapper object which can be asked about PhyMode-to-SINR-Range properties (table). | |
| virtual wns::scheduler::PowerCapabilities | getPowerCapabilities () const |
| retrieve info about a user's power capabilities | |
| virtual wns::scheduler::PowerCapabilities | getPowerCapabilities (const wns::scheduler::UserID user) const |
| retrieve info about a user's power capabilities | |
| int | getPriorityForConnection (wns::scheduler::ConnectionID) |
| tells priority of a connection | |
| wns::scheduler::Bits | getQueueSizeLimitPerConnection () |
| ??? | |
| int | getStationType (const wns::scheduler::UserID user) |
| Returns the type of the user, e.g. base station, relay station, subscriber station. | |
| virtual int | getTotalNumberOfUsers (const wns::scheduler::UserID user) |
| returns one for UTs, and connected UTs in case of RNs | |
| wns::scheduler::UserID | getUserForCID (wns::scheduler::ConnectionID cid) |
| Retrieve the peer user at the other end of the connection that is specified by the connection id. Both CID and UserID are scheduler internal types and might differ from those used in the host system. In that case, they have to be mapped accordingly. | |
| virtual void | registerCID (wns::scheduler::ConnectionID cid, wns::scheduler::UserID userID) |
| registerCID | |
| RegistryProxyWiMAC (wns::ldk::fun::FUN *, const wns::pyconfig::View &) | |
| void | setFriends (const wns::ldk::CommandTypeSpecifierInterface *_classifier) |
| Function that is used by the scheduler FU that instantiates the different scheduling objects such as the registry. The FU can do a findFriend to retrieve a pointer to the classifier. This is given to the registry with this function. | |
| void | setFUN (const wns::ldk::fun::FUN *_fun) |
| By calling this function, the scheduler FU gives the registry a pointer to the FUN it belongs to. The registry needs this, e.g., to get the layer and references to entities such as station/conn managers. | |
| void | switchFilterTo (int qos) |
| ~RegistryProxyWiMAC () | |
Protected Attributes | |
| service::ConnectionManager * | connManager |
| int | currentQoSFilter |
| struct { | |
| wns::ldk::CommandTypeSpecifierInterface * classifier | |
| } | friends |
| wns::ldk::fun::FUN * | fun |
| wimac::Component * | layer2 |
| wns::service::phy::phymode::PhyModeMapperInterface * | phyModeMapper |
| const int | queueSize |
| std::map < wns::scheduler::UserID, ConnectionIdentifier::StationID > | userId2StationId |
Private Member Functions | |
| wns::scheduler::UserSet | filterListening (wns::scheduler::UserSet users) |
| wns::scheduler::UserSet | filterQoSbased (wns::scheduler::UserSet users) |
Private Attributes | |
| wns::scheduler::ConnectionList | cidList |
| bool | isDL_ |
| wimac::frame::MapHandlerInterface * | mapHandler |
| int | numberOfPriorities |
| wns::scheduler::PowerCapabilities | powerAP |
| wns::scheduler::PowerCapabilities | powerFRS |
| wns::scheduler::PowerCapabilities | powerUT |
Definition at line 50 of file RegistryProxyWiMAC.hpp.
| RegistryProxyWiMAC::RegistryProxyWiMAC | ( | wns::ldk::fun::FUN * | , | |
| const wns::pyconfig::View & | config | |||
| ) |
Definition at line 52 of file RegistryProxyWiMAC.cpp.
| wimac::scheduler::RegistryProxyWiMAC::~RegistryProxyWiMAC | ( | ) | [inline] |
Definition at line 55 of file RegistryProxyWiMAC.hpp.
| wns::scheduler::PowerMap RegistryProxyWiMAC::calcULResources | ( | const wns::scheduler::UserSet & | , | |
| unsigned long | int | |||
| ) | const [virtual] |
Implements wns::scheduler::RegistryProxyInterface.
Definition at line 459 of file RegistryProxyWiMAC.cpp.
| virtual void wimac::scheduler::RegistryProxyWiMAC::deregisterCID | ( | wns::scheduler::ConnectionID | cid, | |
| const wns::scheduler::UserID | userID | |||
| ) | [inline, virtual] |
Implements wns::scheduler::RegistryProxyInterface.
Definition at line 101 of file RegistryProxyWiMAC.hpp.
| virtual void wimac::scheduler::RegistryProxyWiMAC::deregisterUser | ( | const wns::scheduler::UserID | userID | ) | [inline, virtual] |
Implements wns::scheduler::RegistryProxyInterface.
Definition at line 105 of file RegistryProxyWiMAC.hpp.
| wns::Power RegistryProxyWiMAC::estimateInterferenceStdDeviation | ( | const wns::scheduler::UserID | user | ) | [virtual] |
Implements wns::scheduler::RegistryProxyInterface.
Definition at line 312 of file RegistryProxyWiMAC.cpp.
| wns::scheduler::ChannelQualityOnOneSubChannel RegistryProxyWiMAC::estimateRxSINROf | ( | const wns::scheduler::UserID | user, | |
| int | slot | |||
| ) | [virtual] |
Implements wns::scheduler::RegistryProxyInterface.
Definition at line 296 of file RegistryProxyWiMAC.cpp.
| wns::scheduler::ChannelQualityOnOneSubChannel RegistryProxyWiMAC::estimateTxSINRAt | ( | const wns::scheduler::UserID | user, | |
| int | slot | |||
| ) | [virtual] |
Implements wns::scheduler::RegistryProxyInterface.
Definition at line 274 of file RegistryProxyWiMAC.cpp.
| wns::scheduler::UserSet RegistryProxyWiMAC::filterListening | ( | wns::scheduler::UserSet | users | ) | [private] |
Definition at line 362 of file RegistryProxyWiMAC.cpp.
| wns::scheduler::UserSet RegistryProxyWiMAC::filterQoSbased | ( | wns::scheduler::UserSet | users | ) | [private] |
Definition at line 386 of file RegistryProxyWiMAC.cpp.
| wns::scheduler::ConnectionSet RegistryProxyWiMAC::filterReachable | ( | wns::scheduler::ConnectionSet | connections, | |
| const int | frameNr, | |||
| bool | usesHARQ | |||
| ) | [virtual] |
Implements wns::scheduler::RegistryProxyInterface.
Definition at line 453 of file RegistryProxyWiMAC.cpp.
| wns::scheduler::UserSet RegistryProxyWiMAC::filterReachable | ( | wns::scheduler::UserSet | users, | |
| const int | frameNr | |||
| ) | [virtual] |
Implements wns::scheduler::RegistryProxyInterface.
Definition at line 435 of file RegistryProxyWiMAC.cpp.
| wns::scheduler::UserSet RegistryProxyWiMAC::filterReachable | ( | wns::scheduler::UserSet | users | ) | [virtual] |
Implements wns::scheduler::RegistryProxyInterface.
Reimplemented in wimac::scheduler::SpaceTimeSectorizationRegistryProxy.
Definition at line 447 of file RegistryProxyWiMAC.cpp.
| wns::scheduler::UserSet RegistryProxyWiMAC::getActiveULUsers | ( | ) | const [virtual] |
Implements wns::scheduler::RegistryProxyInterface.
Definition at line 466 of file RegistryProxyWiMAC.cpp.
| wns::SmartPtr< const wns::service::phy::phymode::PhyModeInterface > RegistryProxyWiMAC::getBestPhyMode | ( | const wns::Ratio & | ) | [virtual] |
Implements wns::scheduler::RegistryProxyInterface.
Definition at line 253 of file RegistryProxyWiMAC.cpp.
| wns::scheduler::ChannelQualitiesOnAllSubBandsPtr RegistryProxyWiMAC::getChannelQualities4UserOnDownlink | ( | wns::scheduler::UserID | user, | |
| int | frameNr | |||
| ) | [virtual] |
Implements wns::scheduler::RegistryProxyInterface.
Definition at line 505 of file RegistryProxyWiMAC.cpp.
| wns::scheduler::ChannelQualitiesOnAllSubBandsPtr RegistryProxyWiMAC::getChannelQualities4UserOnUplink | ( | wns::scheduler::UserID | user, | |
| int | frameNr | |||
| ) | [virtual] |
Implements wns::scheduler::RegistryProxyInterface.
Definition at line 499 of file RegistryProxyWiMAC.cpp.
| wns::scheduler::ConnectionID RegistryProxyWiMAC::getCIDforPDU | ( | const wns::ldk::CompoundPtr & | compound | ) | [virtual] |
Implements wns::scheduler::RegistryProxyInterface.
Definition at line 187 of file RegistryProxyWiMAC.cpp.
| wns::scheduler::ConnectionList & RegistryProxyWiMAC::getCIDListForPriority | ( | int | priority | ) | [virtual] |
Implements wns::scheduler::RegistryProxyInterface.
Definition at line 562 of file RegistryProxyWiMAC.cpp.
| wns::scheduler::ConnectionSet RegistryProxyWiMAC::getConnectionsForPriority | ( | int | priority | ) | [virtual] |
Implements wns::scheduler::RegistryProxyInterface.
Definition at line 571 of file RegistryProxyWiMAC.cpp.
| wns::scheduler::ConnectionVector RegistryProxyWiMAC::getConnectionsForUser | ( | const wns::scheduler::UserID | user | ) | [virtual] |
Implements wns::scheduler::RegistryProxyInterface.
Definition at line 135 of file RegistryProxyWiMAC.cpp.
| bool RegistryProxyWiMAC::getCQIAvailable | ( | ) | const [virtual] |
Implements wns::scheduler::RegistryProxyInterface.
Definition at line 620 of file RegistryProxyWiMAC.cpp.
| bool RegistryProxyWiMAC::getDL | ( | ) | const [virtual] |
Implements wns::scheduler::RegistryProxyInterface.
Definition at line 613 of file RegistryProxyWiMAC.cpp.
| float RegistryProxyWiMAC::getMaxDelayForCID | ( | wns::scheduler::ConnectionID | cid | ) |
Definition at line 175 of file RegistryProxyWiMAC.cpp.
| wns::Ratio RegistryProxyWiMAC::getMinSIRForCID | ( | wns::scheduler::ConnectionID | cid | ) |
Definition at line 181 of file RegistryProxyWiMAC.cpp.
| float RegistryProxyWiMAC::getMinTPForCID | ( | wns::scheduler::ConnectionID | cid | ) |
Definition at line 168 of file RegistryProxyWiMAC.cpp.
| wns::scheduler::UserID RegistryProxyWiMAC::getMyUserID | ( | ) | [virtual] |
Implements wns::scheduler::RegistryProxyInterface.
Definition at line 259 of file RegistryProxyWiMAC.cpp.
| std::string RegistryProxyWiMAC::getNameForUser | ( | const wns::scheduler::UserID | user | ) | [virtual] |
Implements wns::scheduler::RegistryProxyInterface.
Definition at line 224 of file RegistryProxyWiMAC.cpp.
| int RegistryProxyWiMAC::getNumberOfPriorities | ( | ) | [virtual] |
Implements wns::scheduler::RegistryProxyInterface.
Definition at line 555 of file RegistryProxyWiMAC.cpp.
| int RegistryProxyWiMAC::getNumberOfQoSClasses | ( | ) |
Definition at line 548 of file RegistryProxyWiMAC.cpp.
| simTimeType RegistryProxyWiMAC::getOverhead | ( | int | numBursts | ) |
Definition at line 265 of file RegistryProxyWiMAC.cpp.
| wns::service::dll::UnicastAddress RegistryProxyWiMAC::getPeerAddressForCID | ( | wns::scheduler::ConnectionID | cid | ) | [virtual] |
Implements wns::scheduler::RegistryProxyInterface.
Definition at line 126 of file RegistryProxyWiMAC.cpp.
| wns::service::phy::phymode::PhyModeMapperInterface * RegistryProxyWiMAC::getPhyModeMapper | ( | ) | const [virtual] |
Implements wns::scheduler::RegistryProxyInterface.
Definition at line 245 of file RegistryProxyWiMAC.cpp.
| wns::scheduler::PowerCapabilities RegistryProxyWiMAC::getPowerCapabilities | ( | ) | const [virtual] |
Implements wns::scheduler::RegistryProxyInterface.
Definition at line 531 of file RegistryProxyWiMAC.cpp.
| wns::scheduler::PowerCapabilities RegistryProxyWiMAC::getPowerCapabilities | ( | const wns::scheduler::UserID | user | ) | const [virtual] |
Implements wns::scheduler::RegistryProxyInterface.
Definition at line 511 of file RegistryProxyWiMAC.cpp.
| int RegistryProxyWiMAC::getPriorityForConnection | ( | wns::scheduler::ConnectionID | cid | ) | [virtual] |
Implements wns::scheduler::RegistryProxyInterface.
Definition at line 604 of file RegistryProxyWiMAC.cpp.
| wns::scheduler::Bits RegistryProxyWiMAC::getQueueSizeLimitPerConnection | ( | ) | [virtual] |
Implements wns::scheduler::RegistryProxyInterface.
Definition at line 318 of file RegistryProxyWiMAC.cpp.
| wns::service::dll::StationType RegistryProxyWiMAC::getStationType | ( | const wns::scheduler::UserID | user | ) | [virtual] |
Implements wns::scheduler::RegistryProxyInterface.
Definition at line 324 of file RegistryProxyWiMAC.cpp.
| int RegistryProxyWiMAC::getTotalNumberOfUsers | ( | const wns::scheduler::UserID | user | ) | [virtual] |
Implements wns::scheduler::RegistryProxyInterface.
Definition at line 473 of file RegistryProxyWiMAC.cpp.
| wns::scheduler::UserID RegistryProxyWiMAC::getUserForCID | ( | wns::scheduler::ConnectionID | cid | ) | [virtual] |
Implements wns::scheduler::RegistryProxyInterface.
Definition at line 68 of file RegistryProxyWiMAC.cpp.
| virtual void wimac::scheduler::RegistryProxyWiMAC::registerCID | ( | wns::scheduler::ConnectionID | cid, | |
| wns::scheduler::UserID | userID | |||
| ) | [inline, virtual] |
Implements wns::scheduler::RegistryProxyInterface.
Definition at line 97 of file RegistryProxyWiMAC.hpp.
| void RegistryProxyWiMAC::setFriends | ( | const wns::ldk::CommandTypeSpecifierInterface * | _classifier | ) | [virtual] |
Implements wns::scheduler::RegistryProxyInterface.
Definition at line 197 of file RegistryProxyWiMAC.cpp.
| void RegistryProxyWiMAC::setFUN | ( | const wns::ldk::fun::FUN * | fun | ) | [virtual] |
Implements wns::scheduler::RegistryProxyInterface.
Reimplemented in wimac::scheduler::SpaceTimeSectorizationRegistryProxy.
Definition at line 203 of file RegistryProxyWiMAC.cpp.
| void RegistryProxyWiMAC::switchFilterTo | ( | int | qos | ) |
Definition at line 493 of file RegistryProxyWiMAC.cpp.
Definition at line 171 of file RegistryProxyWiMAC.hpp.
Definition at line 152 of file RegistryProxyWiMAC.hpp.
Definition at line 146 of file RegistryProxyWiMAC.hpp.
Definition at line 160 of file RegistryProxyWiMAC.hpp.
struct { ... } wimac::scheduler::RegistryProxyWiMAC::friends [protected] |
Definition at line 144 of file RegistryProxyWiMAC.hpp.
Definition at line 172 of file RegistryProxyWiMAC.hpp.
Definition at line 145 of file RegistryProxyWiMAC.hpp.
Definition at line 173 of file RegistryProxyWiMAC.hpp.
Definition at line 170 of file RegistryProxyWiMAC.hpp.
wns::service::phy::phymode::PhyModeMapperInterface* wimac::scheduler::RegistryProxyWiMAC::phyModeMapper [protected] |
Definition at line 156 of file RegistryProxyWiMAC.hpp.
Definition at line 167 of file RegistryProxyWiMAC.hpp.
Definition at line 168 of file RegistryProxyWiMAC.hpp.
Definition at line 166 of file RegistryProxyWiMAC.hpp.
const int wimac::scheduler::RegistryProxyWiMAC::queueSize [protected] |
Definition at line 158 of file RegistryProxyWiMAC.hpp.
std::map<wns::scheduler::UserID, ConnectionIdentifier::StationID> wimac::scheduler::RegistryProxyWiMAC::userId2StationId [protected] |
Definition at line 149 of file RegistryProxyWiMAC.hpp.
1.5.5