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

Public Member Functions | |
| bool | addCompound (strategy::RequestForResource &request, MapInfoEntryPtr mapInfoEntry, wns::ldk::CompoundPtr compoundPtr, bool _useHARQ) |
| put scheduled compound (one after another) into the PhysicalResourceBlock | |
| bool | addCompound (simTimeType compoundDuration, wns::scheduler::ConnectionID connectionID, wns::scheduler::UserID userID, wns::scheduler::UserID sourceUserID, wns::ldk::CompoundPtr compoundPtr, wns::service::phy::phymode::PhyModeInterfacePtr phyModePtr, wns::Power txPower, wns::service::phy::ofdma::PatternPtr pattern, ChannelQualityOnOneSubChannel _estimatedCQI, bool _useHARQ) |
| put scheduled compound (one after another) into the SchedulingSubChannel | |
| void | clearScheduledCompounds () |
| void | consistencyCheck () |
| mark t=[0..nextPosition] as used by compounds. The rest is free. | |
| int | countScheduledCompounds () const |
| number of compunds inside this resource | |
| void | deleteCompounds () |
| Delete all compounds. But keep all other info (PhyMode, usedTime). This is called by the UL master scheduler, because there are no "real" compounds (just fakes). Only useful for UL scheduling. | |
| std::string | dumpContents (const std::string &prefix) const |
| output structure (machine readable table for Matlab,Gnuplot,etc) | |
| ChannelQualityOnOneSubChannel | getEstimatedCQI () const |
| int | getFreeBitsOnPhysicalResourceBlock (MapInfoEntryPtr mapInfoEntry) const |
| returns number of bits that fit into the PhysicalResourceBlock. Depends on PhyMode provided by mapInfoEntry. | |
| simTimeType | getFreeTime () const |
| total free time on this PhysicalResourceBlock | |
| int | getNetBlockSizeInBits () const |
| determine the length in bits stored in this resource | |
| simTimeType | getNextPosition () const |
| get "offset for new compounds" == used time for already scheduled compounds. Zero for empty subChannel | |
| wns::service::phy::phymode::PhyModeInterfacePtr | getPhyMode () |
| wns::scheduler::UserID | getSourceUserID () const |
| wns::scheduler::UserID | getSourceUserIDOfScheduledCompounds () |
| int | getSpatialLayerIndex () const |
| int | getSubChannelIndex () const |
| int | getTimeSlotIndex () const |
| wns::Power | getTxPower () |
| wns::Power | getTxPower () const |
| get txPower assigned to this resource. Assumes that all contents are for ONE user only and have all equal power. | |
| simTimeType | getUsedTime () const |
| total used time in this PhysicalResourceBlock | |
| wns::scheduler::UserID | getUserID () const |
| get userID this resource has been reserved for or NULL if empty | |
| wns::scheduler::UserID | getUserIDOfScheduledCompounds () |
| void | grantFullResources () |
| extent the usage of each resource to 100% so that UL master map doesn't waste resources. Only useful for UL scheduling. | |
| bool | hasResourcesForUser (wns::scheduler::UserID user) const |
| checks if there are UL resources available for given user | |
| bool | hasScheduledCompounds () const |
| bool | isEmpty () const |
| true if there is nothing reserved(scheduled) in this block (DL). For the uplink the master map entries have isEmpty==false. This question is NOT enough to allow it to be used. see subChannelIsUsable. | |
| bool | isHARQEnabled () const |
| bool | pduFitsInto (strategy::RequestForResource &request, MapInfoEntryPtr mapInfoEntry) const |
| true if compound can be put into the PhysicalResourceBlock | |
| PhysicalResourceBlock (int _subChannelIndex, int _timeSlotIndex, int _spatialLayer, simTimeType _slotLength) | |
| PhysicalResourceBlock (const PhysicalResourceBlock &other) | |
| PhysicalResourceBlock () | |
| void | processMasterMap () |
| perform modifications to use this as MasterMap (called in uplink slave scheduler). Only useful for UL scheduling. | |
| ScheduledCompoundsList::const_iterator | scheduledCompoundsBegin () |
| ScheduledCompoundsList::const_iterator | scheduledCompoundsEnd () |
| void | setSubChannelIndex (int scindex) |
| void | setTimeSlotIndex (int tsindex) |
| void | setTxPower (wns::Power power) |
| set txPower assigned to this resource. Assumes that all contents are for ONE user only. All contents get the same power. Must only be used by APC styrategies. | |
| std::string | toString () const |
| doToString(): human-readable format | |
| ~PhysicalResourceBlock () | |
Private Attributes | |
| wns::service::phy::ofdma::PatternPtr | antennaPattern |
| Antenna pattern for beamforming; else empty. Yet unclear if this is constant over all subchannels or not. | |
| ChannelQualityOnOneSubChannel | estimatedCQI |
| Estimated CQI at last scheduling time. | |
| simTimeType | freeTime |
| remaining time on this subChannel for new compounds | |
| simTimeType | nextPosition |
| offset for new compounds == used time for already scheduled compounds | |
| wns::service::phy::phymode::PhyModeInterfacePtr | phyModePtr |
| phyMode used in this subChannel (all compounds should have the same) | |
| ScheduledCompoundsList | scheduledCompounds |
| list of all compound together with their attributes | |
| simTimeType | slotLength |
| fixed frame/slot length given from outside | |
| wns::scheduler::UserID | sourceUserID |
| int | spatialIndex |
| my own spatialIndex as seen from outside (container). For MIMO; in [0..(maxSpatialLayers-1)] | |
| int | subChannelIndex |
| my own subChannelIndex as seen from outside (container) | |
| int | timeSlotIndex |
| index of time slot (TDMA component) | |
| wns::Power | txPower |
| transmit power used in this subChannel (e.g. when APC is used) | |
| wns::scheduler::UserID | userID |
| usually all compounds in a PRB must have the same user | |
Definition at line 126 of file SchedulingMap.hpp.
| PhysicalResourceBlock::PhysicalResourceBlock | ( | ) |
Definition at line 137 of file SchedulingMap.cpp.
| PhysicalResourceBlock::PhysicalResourceBlock | ( | const PhysicalResourceBlock & | other | ) |
Definition at line 169 of file SchedulingMap.cpp.
| PhysicalResourceBlock::PhysicalResourceBlock | ( | int | _subChannelIndex, | |
| int | _timeSlotIndex, | |||
| int | _spatialLayer, | |||
| simTimeType | _slotLength | |||
| ) |
Definition at line 152 of file SchedulingMap.cpp.
| PhysicalResourceBlock::~PhysicalResourceBlock | ( | ) |
Definition at line 192 of file SchedulingMap.cpp.
| bool PhysicalResourceBlock::addCompound | ( | strategy::RequestForResource & | request, | |
| MapInfoEntryPtr | mapInfoEntry, | |||
| wns::ldk::CompoundPtr | compoundPtr, | |||
| bool | _useHARQ | |||
| ) |
| MapInfoEntryPtr | contains result from doAdaptiveResourceScheduling(), but without compound contained | |
| compoundPtr | is the PDU to be put into the resource |
Definition at line 327 of file SchedulingMap.cpp.
| bool PhysicalResourceBlock::addCompound | ( | simTimeType | compoundDuration, | |
| wns::scheduler::ConnectionID | connectionID, | |||
| wns::scheduler::UserID | userID, | |||
| wns::scheduler::UserID | sourceUserID, | |||
| wns::ldk::CompoundPtr | compoundPtr, | |||
| wns::service::phy::phymode::PhyModeInterfacePtr | phyModePtr, | |||
| wns::Power | txPower, | |||
| wns::service::phy::ofdma::PatternPtr | pattern, | |||
| ChannelQualityOnOneSubChannel | _estimatedCQI, | |||
| bool | _useHARQ | |||
| ) |
Definition at line 248 of file SchedulingMap.cpp.
| void wns::scheduler::PhysicalResourceBlock::clearScheduledCompounds | ( | ) | [inline] |
Definition at line 276 of file SchedulingMap.hpp.
| void PhysicalResourceBlock::consistencyCheck | ( | ) |
Definition at line 549 of file SchedulingMap.cpp.
| int PhysicalResourceBlock::countScheduledCompounds | ( | ) | const |
Definition at line 454 of file SchedulingMap.cpp.
| void PhysicalResourceBlock::deleteCompounds | ( | ) |
Definition at line 511 of file SchedulingMap.cpp.
| std::string PhysicalResourceBlock::dumpContents | ( | const std::string & | prefix | ) | const |
Definition at line 375 of file SchedulingMap.cpp.
| ChannelQualityOnOneSubChannel wns::scheduler::PhysicalResourceBlock::getEstimatedCQI | ( | ) | const [inline] |
Definition at line 282 of file SchedulingMap.hpp.
| int PhysicalResourceBlock::getFreeBitsOnPhysicalResourceBlock | ( | MapInfoEntryPtr | mapInfoEntry | ) | const |
Definition at line 236 of file SchedulingMap.cpp.
| simTimeType PhysicalResourceBlock::getFreeTime | ( | ) | const |
Definition at line 204 of file SchedulingMap.cpp.
| int PhysicalResourceBlock::getNetBlockSizeInBits | ( | ) | const |
Definition at line 558 of file SchedulingMap.cpp.
| simTimeType PhysicalResourceBlock::getNextPosition | ( | ) | const |
Definition at line 211 of file SchedulingMap.cpp.
| wns::service::phy::phymode::PhyModeInterfacePtr wns::scheduler::PhysicalResourceBlock::getPhyMode | ( | ) | [inline] |
Definition at line 220 of file SchedulingMap.hpp.
| wns::scheduler::UserID PhysicalResourceBlock::getSourceUserID | ( | ) | const |
Definition at line 480 of file SchedulingMap.cpp.
| wns::scheduler::UserID wns::scheduler::PhysicalResourceBlock::getSourceUserIDOfScheduledCompounds | ( | ) | [inline] |
Definition at line 254 of file SchedulingMap.hpp.
| int wns::scheduler::PhysicalResourceBlock::getSpatialLayerIndex | ( | ) | const [inline] |
Definition at line 238 of file SchedulingMap.hpp.
| int wns::scheduler::PhysicalResourceBlock::getSubChannelIndex | ( | ) | const [inline] |
Definition at line 226 of file SchedulingMap.hpp.
| int wns::scheduler::PhysicalResourceBlock::getTimeSlotIndex | ( | ) | const [inline] |
Definition at line 232 of file SchedulingMap.hpp.
| wns::Power wns::scheduler::PhysicalResourceBlock::getTxPower | ( | ) | [inline] |
Definition at line 223 of file SchedulingMap.hpp.
| wns::Power PhysicalResourceBlock::getTxPower | ( | ) | const |
Definition at line 486 of file SchedulingMap.cpp.
| simTimeType PhysicalResourceBlock::getUsedTime | ( | ) | const |
Definition at line 197 of file SchedulingMap.cpp.
| wns::scheduler::UserID PhysicalResourceBlock::getUserID | ( | ) | const |
Definition at line 470 of file SchedulingMap.cpp.
| wns::scheduler::UserID wns::scheduler::PhysicalResourceBlock::getUserIDOfScheduledCompounds | ( | ) | [inline] |
Definition at line 244 of file SchedulingMap.hpp.
| void PhysicalResourceBlock::grantFullResources | ( | ) |
Definition at line 517 of file SchedulingMap.cpp.
| bool PhysicalResourceBlock::hasResourcesForUser | ( | wns::scheduler::UserID | user | ) | const |
Definition at line 543 of file SchedulingMap.cpp.
| bool wns::scheduler::PhysicalResourceBlock::hasScheduledCompounds | ( | ) | const [inline] |
Definition at line 241 of file SchedulingMap.hpp.
| bool PhysicalResourceBlock::isEmpty | ( | ) | const |
Definition at line 460 of file SchedulingMap.cpp.
| bool PhysicalResourceBlock::isHARQEnabled | ( | ) | const |
Definition at line 577 of file SchedulingMap.cpp.
| bool PhysicalResourceBlock::pduFitsInto | ( | strategy::RequestForResource & | request, | |
| MapInfoEntryPtr | mapInfoEntry | |||
| ) | const |
Definition at line 217 of file SchedulingMap.cpp.
| void PhysicalResourceBlock::processMasterMap | ( | ) |
Definition at line 529 of file SchedulingMap.cpp.
| ScheduledCompoundsList::const_iterator wns::scheduler::PhysicalResourceBlock::scheduledCompoundsBegin | ( | ) | [inline] |
Definition at line 264 of file SchedulingMap.hpp.
| ScheduledCompoundsList::const_iterator wns::scheduler::PhysicalResourceBlock::scheduledCompoundsEnd | ( | ) | [inline] |
Definition at line 270 of file SchedulingMap.hpp.
| void wns::scheduler::PhysicalResourceBlock::setSubChannelIndex | ( | int | scindex | ) | [inline] |
Definition at line 229 of file SchedulingMap.hpp.
| void wns::scheduler::PhysicalResourceBlock::setTimeSlotIndex | ( | int | tsindex | ) | [inline] |
Definition at line 235 of file SchedulingMap.hpp.
| void PhysicalResourceBlock::setTxPower | ( | wns::Power | power | ) |
Definition at line 492 of file SchedulingMap.cpp.
| std::string PhysicalResourceBlock::toString | ( | ) | const |
Definition at line 417 of file SchedulingMap.cpp.
wns::service::phy::ofdma::PatternPtr wns::scheduler::PhysicalResourceBlock::antennaPattern [private] |
Definition at line 316 of file SchedulingMap.hpp.
Definition at line 319 of file SchedulingMap.hpp.
Definition at line 301 of file SchedulingMap.hpp.
Definition at line 303 of file SchedulingMap.hpp.
wns::service::phy::phymode::PhyModeInterfacePtr wns::scheduler::PhysicalResourceBlock::phyModePtr [private] |
Definition at line 310 of file SchedulingMap.hpp.
Definition at line 305 of file SchedulingMap.hpp.
Definition at line 299 of file SchedulingMap.hpp.
Definition at line 308 of file SchedulingMap.hpp.
Definition at line 297 of file SchedulingMap.hpp.
Definition at line 292 of file SchedulingMap.hpp.
Definition at line 294 of file SchedulingMap.hpp.
Definition at line 312 of file SchedulingMap.hpp.
Definition at line 307 of file SchedulingMap.hpp.
1.5.5