|
INET Framework for OMNeT++/OMNEST
|
#include <MediumLimitCache.h>
Public Member Functions | |
| MediumLimitCache () | |
| virtual std::ostream & | printToStream (std::ostream &stream, int level) const override |
| Prints this object to the provided output stream. More... | |
| virtual void | addRadio (const IRadio *radio) override |
| Notifies the cache when a radio is added to the medium. More... | |
| virtual void | removeRadio (const IRadio *radio) override |
| Notifies the cache when a radio is removed from the medium. More... | |
Query limits | |
| virtual Coord | getMinConstraintArea () const override |
| Returns the minimum possible position among the radios, the coordinate values are in the range (-infinity, +infinity) or NaN if unspecified. More... | |
| virtual Coord | getMaxConstraintArea () const override |
| Returns the maximum possible position among the radios, the coordinate values are in the range (-infinity, +infinity) or NaN if unspecified. More... | |
| virtual mps | getMaxSpeed () const override |
| Returns the maximum possible speed among the radios, the value is in the range [0, +infinity) or NaN if unspecified. More... | |
| virtual W | getMaxTransmissionPower () const override |
| Returns the maximum possible transmission power among the radios, the value is in the range [0, +infinity) or NaN if unspecified. More... | |
| virtual W | getMinInterferencePower () const override |
| Returns the minimum possible interference power among the radios, the value is in the range [0, +infinity) or NaN if unspecified. More... | |
| virtual W | getMinReceptionPower () const override |
| Returns the minimum possible reception power among the radios, the value is in the range [0, +infinity) or NaN if unspecified. More... | |
| virtual double | getMaxAntennaGain () const override |
| Returns the maximum possible antenna gain among the radios, the value is in the range [1, +infinity) or NaN if unspecified. More... | |
| virtual const simtime_t & | getMinInterferenceTime () const override |
| Returns the minimum required signal interference time among the radios, the value is in the range [0, +infinity) or NaN if unspecified. More... | |
| virtual const simtime_t & | getMaxTransmissionDuration () const override |
| Returns the maximum possible transmission durations among the radios, the value is in the range [0, +infinity) or NaN if unspecified. More... | |
| virtual m | getMaxCommunicationRange () const override |
| Returns the maximum possible communication range among the radios, the value is in the range [0, +infinity) or NaN if unspecified. More... | |
| virtual m | getMaxInterferenceRange () const override |
| Returns the maximum possible interference range among the radios, the value is in the range [0, +infinity) or NaN if unspecified. More... | |
| virtual m | getMaxCommunicationRange (const IRadio *radio) const override |
| Returns the maximum possible communication range for a given radio, the value is in the range [0, +infinity) or NaN if unspecified. More... | |
| virtual m | getMaxInterferenceRange (const IRadio *radio) const override |
| Returns the maximum possible interference range for a given radio, the value is in the range [0, +infinity) or NaN if unspecified. More... | |
Public Member Functions inherited from inet::physicallayer::IPrintableObject | |
| virtual | ~IPrintableObject () |
| virtual std::string | getInfoStringRepresentation () const |
| virtual std::string | getDetailStringRepresentation () const |
| virtual std::string | getDebugStringRepresentation () const |
| virtual std::string | getTraceStringRepresentation () const |
| virtual std::string | getCompleteStringRepresentation () const |
Protected Member Functions | |
| virtual int | numInitStages () const override |
| virtual void | initialize (int stage) override |
Compute limits | |
| virtual Coord | computeMinConstraintArea () const |
| virtual Coord | computeMaxConstreaintArea () const |
| virtual mps | computeMaxSpeed () const |
| virtual W | computeMaxTransmissionPower () const |
| virtual W | computeMinInterferencePower () const |
| virtual W | computeMinReceptionPower () const |
| virtual double | computeMaxAntennaGain () const |
| virtual const simtime_t | computeMinInterferenceTime () const |
| virtual const simtime_t | computeMaxTransmissionDuration () const |
| virtual m | computeMaxRange (W maxTransmissionPower, W minReceptionPower) const |
| virtual m | computeMaxCommunicationRange () const |
| virtual m | computeMaxInterferenceRange () const |
| virtual void | updateLimits () |
Protected Attributes | |
| const IRadioMedium * | radioMedium |
| The corresponding radio medium is never nullptr. More... | |
| std::vector< const IRadio * > | radios |
| The list of communicating radios on the medium. More... | |
Various radio medium limits. | |
| Coord | minConstraintArea |
| The constraint area minimum among the radios is in the range [-infinity, +infinity] or NaN if unspecified. More... | |
| Coord | maxConstraintArea |
| The constraint area maximum among the radios is in the range [-infinity, +infinity] or NaN if unspecified. More... | |
| mps | maxSpeed |
| The maximum speed among the radios is in the range [0, +infinity) or NaN if unspecified. More... | |
| W | maxTransmissionPower |
| The maximum transmission power among the radio transmitters is in the range [0, +infinity) or NaN if unspecified. More... | |
| W | minInterferencePower |
| The minimum interference power among the radio receivers is in the range [0, +infinity) or NaN if unspecified. More... | |
| W | minReceptionPower |
| The minimum reception power among the radio receivers is in the range [0, +infinity) or NaN if unspecified. More... | |
| double | maxAntennaGain |
| The maximum gain among the radio antennas is in the range [1, +infinity). More... | |
| simtime_t | minInterferenceTime |
| The minimum overlapping in time needed to consider two transmissions interfering. More... | |
| simtime_t | maxTransmissionDuration |
| The maximum transmission duration of a radio signal. More... | |
| m | maxCommunicationRange |
| The maximum communication range where a transmission can still be potentially successfully received is in the range [0, +infinity) or NaN if unspecified. More... | |
| m | maxInterferenceRange |
| The maximum interference range where a transmission is still considered to some effect on other transmissions is in the range [0, +infinity) or NaN if unspecified. More... | |
Additional Inherited Members | |
Public Types inherited from inet::physicallayer::IPrintableObject | |
| enum | PrintLevel { PRINT_LEVEL_TRACE, PRINT_LEVEL_DEBUG, PRINT_LEVEL_DETAIL, PRINT_LEVEL_INFO, PRINT_LEVEL_COMPLETE = INT_MIN } |
| inet::physicallayer::MediumLimitCache::MediumLimitCache | ( | ) |
|
overridevirtual |
Notifies the cache when a radio is added to the medium.
Implements inet::physicallayer::IMediumLimitCache.
|
protectedvirtual |
Referenced by updateLimits().
|
protectedvirtual |
Referenced by updateLimits().
|
protectedvirtual |
Referenced by updateLimits().
|
protectedvirtual |
Referenced by updateLimits().
|
protectedvirtual |
Referenced by computeMaxCommunicationRange(), computeMaxInterferenceRange(), getMaxCommunicationRange(), and getMaxInterferenceRange().
|
protectedvirtual |
Referenced by updateLimits().
|
protectedvirtual |
Referenced by updateLimits().
|
protectedvirtual |
Referenced by updateLimits().
|
protectedvirtual |
Referenced by updateLimits().
|
protectedvirtual |
Referenced by updateLimits().
|
protectedvirtual |
Referenced by updateLimits().
|
protectedvirtual |
Referenced by updateLimits().
|
inlineoverridevirtual |
Returns the maximum possible antenna gain among the radios, the value is in the range [1, +infinity) or NaN if unspecified.
Implements inet::physicallayer::IMediumLimitCache.
|
inlineoverridevirtual |
Returns the maximum possible communication range among the radios, the value is in the range [0, +infinity) or NaN if unspecified.
Implements inet::physicallayer::IMediumLimitCache.
|
overridevirtual |
Returns the maximum possible communication range for a given radio, the value is in the range [0, +infinity) or NaN if unspecified.
Implements inet::physicallayer::IMediumLimitCache.
|
inlineoverridevirtual |
Returns the maximum possible position among the radios, the coordinate values are in the range (-infinity, +infinity) or NaN if unspecified.
Implements inet::physicallayer::IMediumLimitCache.
|
inlineoverridevirtual |
Returns the maximum possible interference range among the radios, the value is in the range [0, +infinity) or NaN if unspecified.
Implements inet::physicallayer::IMediumLimitCache.
|
overridevirtual |
Returns the maximum possible interference range for a given radio, the value is in the range [0, +infinity) or NaN if unspecified.
Implements inet::physicallayer::IMediumLimitCache.
|
inlineoverridevirtual |
Returns the maximum possible speed among the radios, the value is in the range [0, +infinity) or NaN if unspecified.
Implements inet::physicallayer::IMediumLimitCache.
|
inlineoverridevirtual |
Returns the maximum possible transmission durations among the radios, the value is in the range [0, +infinity) or NaN if unspecified.
Implements inet::physicallayer::IMediumLimitCache.
|
inlineoverridevirtual |
Returns the maximum possible transmission power among the radios, the value is in the range [0, +infinity) or NaN if unspecified.
Implements inet::physicallayer::IMediumLimitCache.
|
inlineoverridevirtual |
Returns the minimum possible position among the radios, the coordinate values are in the range (-infinity, +infinity) or NaN if unspecified.
Implements inet::physicallayer::IMediumLimitCache.
|
inlineoverridevirtual |
Returns the minimum possible interference power among the radios, the value is in the range [0, +infinity) or NaN if unspecified.
Implements inet::physicallayer::IMediumLimitCache.
|
inlineoverridevirtual |
Returns the minimum required signal interference time among the radios, the value is in the range [0, +infinity) or NaN if unspecified.
Implements inet::physicallayer::IMediumLimitCache.
|
inlineoverridevirtual |
Returns the minimum possible reception power among the radios, the value is in the range [0, +infinity) or NaN if unspecified.
Implements inet::physicallayer::IMediumLimitCache.
|
overrideprotectedvirtual |
|
inlineoverrideprotectedvirtual |
|
overridevirtual |
Prints this object to the provided output stream.
Function calls to operator<< with pointers or references either const or not are all forwarded to this function.
Reimplemented from inet::physicallayer::IPrintableObject.
|
overridevirtual |
Notifies the cache when a radio is removed from the medium.
Implements inet::physicallayer::IMediumLimitCache.
|
protectedvirtual |
Referenced by addRadio(), and removeRadio().
|
protected |
The maximum gain among the radio antennas is in the range [1, +infinity).
Referenced by computeMaxAntennaGain(), computeMaxRange(), initialize(), printToStream(), and updateLimits().
|
protected |
The maximum communication range where a transmission can still be potentially successfully received is in the range [0, +infinity) or NaN if unspecified.
Referenced by getMaxCommunicationRange(), initialize(), printToStream(), and updateLimits().
|
protected |
The constraint area maximum among the radios is in the range [-infinity, +infinity] or NaN if unspecified.
Referenced by computeMaxConstreaintArea(), initialize(), printToStream(), and updateLimits().
|
protected |
The maximum interference range where a transmission is still considered to some effect on other transmissions is in the range [0, +infinity) or NaN if unspecified.
Referenced by getMaxInterferenceRange(), initialize(), printToStream(), and updateLimits().
|
protected |
The maximum speed among the radios is in the range [0, +infinity) or NaN if unspecified.
Referenced by computeMaxSpeed(), initialize(), printToStream(), and updateLimits().
|
protected |
The maximum transmission duration of a radio signal.
Referenced by initialize(), printToStream(), and updateLimits().
|
protected |
The maximum transmission power among the radio transmitters is in the range [0, +infinity) or NaN if unspecified.
Referenced by computeMaxCommunicationRange(), computeMaxInterferenceRange(), computeMaxTransmissionPower(), initialize(), printToStream(), and updateLimits().
|
protected |
The constraint area minimum among the radios is in the range [-infinity, +infinity] or NaN if unspecified.
Referenced by computeMinConstraintArea(), initialize(), printToStream(), and updateLimits().
|
protected |
The minimum interference power among the radio receivers is in the range [0, +infinity) or NaN if unspecified.
Referenced by computeMaxInterferenceRange(), computeMinInterferencePower(), getMaxInterferenceRange(), initialize(), printToStream(), and updateLimits().
|
protected |
The minimum overlapping in time needed to consider two transmissions interfering.
Referenced by initialize(), printToStream(), and updateLimits().
|
protected |
The minimum reception power among the radio receivers is in the range [0, +infinity) or NaN if unspecified.
Referenced by computeMaxCommunicationRange(), computeMinReceptionPower(), getMaxCommunicationRange(), initialize(), printToStream(), and updateLimits().
|
protected |
The corresponding radio medium is never nullptr.
Referenced by computeMaxRange(), and initialize().
|
protected |
The list of communicating radios on the medium.
Referenced by addRadio(), computeMaxAntennaGain(), computeMaxConstreaintArea(), computeMaxSpeed(), computeMaxTransmissionPower(), computeMinConstraintArea(), computeMinInterferencePower(), computeMinReceptionPower(), and removeRadio().