INET Framework for OMNeT++/OMNEST
|
This class implements the deterministic free space path loss model. More...
#include <FreeSpacePathLoss.h>
Public Member Functions | |
FreeSpacePathLoss () | |
virtual std::ostream & | printToStream (std::ostream &stream, int level) const override |
Prints this object to the provided output stream. More... | |
virtual double | computePathLoss (mps propagationSpeed, Hz frequency, m distance) const override |
Returns the loss factor as a function of propagation speed, carrier frequency and distance. More... | |
virtual m | computeRange (mps propagationSpeed, Hz frequency, double loss) const override |
Returns the range for the given loss factor. More... | |
Public Member Functions inherited from inet::physicallayer::PathLossBase | |
virtual double | computePathLoss (const ITransmission *transmission, const IArrival *arrival) const override |
Returns the loss factor for the provided transmission and arrival. 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 void | initialize (int stage) override |
virtual double | computeFreeSpacePathLoss (m waveLength, m distance, double alpha, double systemLoss) const |
Protected Attributes | |
double | alpha |
double | systemLoss |
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 } |
This class implements the deterministic free space path loss model.
inet::physicallayer::FreeSpacePathLoss::FreeSpacePathLoss | ( | ) |
|
protectedvirtual |
Referenced by inet::physicallayer::RayleighFading::computePathLoss(), inet::physicallayer::LogNormalShadowing::computePathLoss(), inet::physicallayer::NakagamiFading::computePathLoss(), inet::physicallayer::TwoRayGroundReflection::computePathLoss(), inet::physicallayer::RicianFading::computePathLoss(), and computePathLoss().
|
overridevirtual |
Returns the loss factor as a function of propagation speed, carrier frequency and distance.
The value is in the range [0, 1] where 1 means no loss at all and 0 means all power is lost.
Implements inet::physicallayer::PathLossBase.
Reimplemented in inet::physicallayer::RicianFading, inet::physicallayer::LogNormalShadowing, inet::physicallayer::NakagamiFading, and inet::physicallayer::RayleighFading.
|
overridevirtual |
Returns the range for the given loss factor.
The value is in the range [0, +infinity) or NaN if unspecified.
Implements inet::physicallayer::IPathLoss.
|
overrideprotectedvirtual |
Reimplemented in inet::physicallayer::TwoRayGroundReflection, inet::physicallayer::RicianFading, inet::physicallayer::LogNormalShadowing, and inet::physicallayer::NakagamiFading.
Referenced by inet::physicallayer::LogNormalShadowing::initialize(), inet::physicallayer::NakagamiFading::initialize(), and inet::physicallayer::RicianFading::initialize().
|
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.
Reimplemented in inet::physicallayer::RicianFading, inet::physicallayer::TwoRayGroundReflection, inet::physicallayer::LogNormalShadowing, inet::physicallayer::NakagamiFading, and inet::physicallayer::RayleighFading.
|
protected |
Referenced by computeFreeSpacePathLoss(), inet::physicallayer::RayleighFading::computePathLoss(), inet::physicallayer::NakagamiFading::computePathLoss(), inet::physicallayer::LogNormalShadowing::computePathLoss(), inet::physicallayer::RicianFading::computePathLoss(), inet::physicallayer::TwoRayGroundReflection::computePathLoss(), computePathLoss(), computeRange(), initialize(), inet::physicallayer::RayleighFading::printToStream(), inet::physicallayer::NakagamiFading::printToStream(), inet::physicallayer::LogNormalShadowing::printToStream(), inet::physicallayer::RicianFading::printToStream(), inet::physicallayer::TwoRayGroundReflection::printToStream(), and printToStream().
|
protected |
Referenced by inet::physicallayer::RayleighFading::computePathLoss(), inet::physicallayer::LogNormalShadowing::computePathLoss(), inet::physicallayer::NakagamiFading::computePathLoss(), inet::physicallayer::RicianFading::computePathLoss(), inet::physicallayer::TwoRayGroundReflection::computePathLoss(), computePathLoss(), computeRange(), initialize(), inet::physicallayer::RayleighFading::printToStream(), inet::physicallayer::NakagamiFading::printToStream(), inet::physicallayer::LogNormalShadowing::printToStream(), inet::physicallayer::TwoRayGroundReflection::printToStream(), inet::physicallayer::RicianFading::printToStream(), and printToStream().