User Manual, Developers Guide and API Documentation

dll::services::management::InterferenceCache Class Reference

The interference cache provides averaged carrier and interference values.

#include <services/management/InterferenceCache.hpp>

Inheritance diagram for dll::services::management::InterferenceCache:

Inheritance graph
[legend]
Collaboration diagram for dll::services::management::InterferenceCache:

Collaboration graph
[legend]

List of all members.

Public Types

typedef
wns::ldk::PyConfigCreator
< NotFoundStrategy
NotFoundStrategyCreator
typedef wns::StaticFactory
< NotFoundStrategyCreator
NotFoundStrategyFactory
enum  ValueOrigin { Local, Remote }

Public Member Functions

wns::Power getAveragedCarrier (wns::node::Interface *node, int subBand=0) const
 Returns the average carrier power measured so far.
wns::Power getAveragedInterference (wns::node::Interface *node, int subBand=0) const
 Returns the average interference measured so far.
wns::Ratio getAveragedPathloss (wns::node::Interface *node, int subBand=0) const
 Returns the average pathloss measured so far.
wns::Ratio getAverageEmittedInterferencePathloss (wns::node::Interface *node) const
 Get the average uplink interference pathloss from this node to all but this BS.
wns::Power getCarrierDeviation (wns::node::Interface *, int subBand=0) const
 Returns the deviation of the measured carrier power.
wns::Power getInterferenceDeviation (wns::node::Interface *, int subBand=0) const
 Returns the deviation of the measured interference power.
wns::Power getPerSCAveragedCarrier (wns::node::Interface *node) const
 Returns the average carrier power measured so far on all subchannels the node transmitted on.
wns::Power getPerSCAveragedInterference (wns::node::Interface *node) const
 Returns the average interference measured so far on all subchannels the node transmitted on.
wns::Ratio getPerSCAveragedPathloss (wns::node::Interface *node) const
 Returns the average pathloss measured so far on all subchannels the node transmitted on.
 InterferenceCache (wns::ldk::ManagementServiceRegistry *, const wns::pyconfig::View &config)
virtual void onMSRCreated ()
void storeCarrier (wns::node::Interface *node, const wns::Power &carrier, ValueOrigin origin, int subBand=0)
 Store the received carrier power of node in the InterferenceCache.
void storeInterference (wns::node::Interface *node, const wns::Power &interference, ValueOrigin origin, int subBand=0)
 Store the received interference power of node in the InterferenceCache.
void storeMeasurements (wns::node::Interface *node, wns::service::phy::power::PowerMeasurementPtr rxPowerMeasurement, ValueOrigin origin, int subBand=0)
 Store the received power measurements of node in the InterferenceCache.
void storePathloss (wns::node::Interface *node, const wns::Ratio &pathloss, ValueOrigin origin, int subBand=0)
 Store the estimated pathloss (including antenna gains) to a node in the InterferenceCache.
virtual ~InterferenceCache ()

Private Types

typedef std::map
< InterferenceCacheKey, double
Node2Double
typedef std::map
< InterferenceCacheKey,
wns::Power
Node2Power

Private Attributes

double alphaLocal_
double alphaRemote_
bool initialized_
wns::logger::Logger logger
Node2Power node2CarrierAverage_
Node2Double node2CarrierSqExp_
Node2Power node2InterferenceAverage_
Node2Double node2InterferenceSqExp_
Node2Double node2pathloss
std::auto_ptr< NotFoundStrategynotFoundStrategy
std::list< InterferenceCache * > remoteBSCaches_
std::string serviceName_
std::map< int, std::set< int > > userSubbands_

Classes

class  Complain
 A NotFoundStrategy that throws an exception. More...
class  ConstantValue
 A NotFoundStrategy that returns constant values. More...
class  InterferenceCacheKey
 A key for the internal representation of the cache. More...
class  NotFoundStrategy
 Strategy that specifies the behaviour if the requested value is not found. More...


Detailed Description

Definition at line 52 of file InterferenceCache.hpp.


Member Typedef Documentation

Definition at line 300 of file InterferenceCache.hpp.

Definition at line 299 of file InterferenceCache.hpp.

Definition at line 96 of file InterferenceCache.hpp.

Definition at line 97 of file InterferenceCache.hpp.


Member Enumeration Documentation

Enumerator:
Local 
Remote 

Definition at line 192 of file InterferenceCache.hpp.


Constructor & Destructor Documentation

InterferenceCache::InterferenceCache ( wns::ldk::ManagementServiceRegistry msr,
const wns::pyconfig::View config 
)

Definition at line 69 of file InterferenceCache.cpp.

virtual dll::services::management::InterferenceCache::~InterferenceCache (  )  [inline, virtual]

Definition at line 187 of file InterferenceCache.hpp.


Member Function Documentation

wns::Power InterferenceCache::getAveragedCarrier ( wns::node::Interface node,
int  subBand = 0 
) const

Definition at line 234 of file InterferenceCache.cpp.

wns::Power InterferenceCache::getAveragedInterference ( wns::node::Interface node,
int  subBand = 0 
) const

Definition at line 245 of file InterferenceCache.cpp.

wns::Ratio InterferenceCache::getAveragedPathloss ( wns::node::Interface node,
int  subBand = 0 
) const

Definition at line 256 of file InterferenceCache.cpp.

wns::Ratio InterferenceCache::getAverageEmittedInterferencePathloss ( wns::node::Interface node  )  const

Definition at line 340 of file InterferenceCache.cpp.

wns::Power InterferenceCache::getCarrierDeviation ( wns::node::Interface node,
int  subBand = 0 
) const

Definition at line 388 of file InterferenceCache.cpp.

wns::Power InterferenceCache::getInterferenceDeviation ( wns::node::Interface node,
int  subBand = 0 
) const

Definition at line 404 of file InterferenceCache.cpp.

wns::Power InterferenceCache::getPerSCAveragedCarrier ( wns::node::Interface node  )  const

Definition at line 268 of file InterferenceCache.cpp.

wns::Power InterferenceCache::getPerSCAveragedInterference ( wns::node::Interface node  )  const

Definition at line 291 of file InterferenceCache.cpp.

wns::Ratio InterferenceCache::getPerSCAveragedPathloss ( wns::node::Interface node  )  const

Definition at line 315 of file InterferenceCache.cpp.

void InterferenceCache::onMSRCreated (  )  [virtual]

Reimplemented from wns::ldk::ManagementService.

Definition at line 384 of file InterferenceCache.cpp.

void InterferenceCache::storeCarrier ( wns::node::Interface node,
const wns::Power carrier,
ValueOrigin  origin,
int  subBand = 0 
)

The received carrier power of node is stored in the InterferenceCache. The ValueOrigin tells whether the local node or a remote node writes into the cache.

Obsolete for new code. But still used in unitTests. Therefore not removed.

See also:
storeMeasurements()

Definition at line 150 of file InterferenceCache.cpp.

void InterferenceCache::storeInterference ( wns::node::Interface node,
const wns::Power interference,
ValueOrigin  origin,
int  subBand = 0 
)

The received interference power of node is stored in the InterferenceCache. The ValueOrigin tells whether the local node or a remote node writes into the cache.

Obsolete for new code. But still used in unitTests. Therefore not removed.

See also:
storeMeasurements()

Definition at line 181 of file InterferenceCache.cpp.

void InterferenceCache::storeMeasurements ( wns::node::Interface node,
wns::service::phy::power::PowerMeasurementPtr  rxPowerMeasurement,
ValueOrigin  origin,
int  subBand = 0 
)

The received power values of node is stored in the InterferenceCache. The ValueOrigin tells whether the local node or a remote node writes into the cache.

See also:
storeCarrier()

storeInterference()

storePathloss()

Definition at line 89 of file InterferenceCache.cpp.

void InterferenceCache::storePathloss ( wns::node::Interface node,
const wns::Ratio pathloss,
ValueOrigin  origin,
int  subBand = 0 
)

Obsolete for new code. But still used in unitTests. Therefore not removed.

See also:
storeMeasurements()

Definition at line 212 of file InterferenceCache.cpp.


Member Data Documentation

Definition at line 307 of file InterferenceCache.hpp.

Definition at line 308 of file InterferenceCache.hpp.

Definition at line 309 of file InterferenceCache.hpp.

Definition at line 314 of file InterferenceCache.hpp.

Definition at line 302 of file InterferenceCache.hpp.

Definition at line 304 of file InterferenceCache.hpp.

Definition at line 303 of file InterferenceCache.hpp.

Definition at line 305 of file InterferenceCache.hpp.

Definition at line 306 of file InterferenceCache.hpp.

Definition at line 316 of file InterferenceCache.hpp.

Definition at line 310 of file InterferenceCache.hpp.

Definition at line 312 of file InterferenceCache.hpp.

Definition at line 311 of file InterferenceCache.hpp.


The documentation for this class was generated from the following files:

Generated on Sat May 26 03:32:30 2012 for openWNS by  doxygen 1.5.5