INET Framework for OMNeT++/OMNEST
inet::physicallayer::IAntennaGain Class Referenceabstract

This interface represents the directional selectivity of an antenna. More...

#include <IAntennaGain.h>

Inheritance diagram for inet::physicallayer::IAntennaGain:
inet::IPrintableObject inet::IntrusivePtrCounter< IAntennaGain > inet::physicallayer::AxiallySymmetricAntenna::AntennaGain inet::physicallayer::ConstantGainAntenna::AntennaGain inet::physicallayer::CosineAntenna::AntennaGain inet::physicallayer::DipoleAntenna::AntennaGain inet::physicallayer::InterpolatingAntenna::AntennaGain inet::physicallayer::IsotropicAntenna::AntennaGain inet::physicallayer::ParabolicAntenna::AntennaGain

Public Member Functions

virtual double getMinGain () const =0
 Returns the minimum possible antenna gain independent of any direction. More...
 
virtual double getMaxGain () const =0
 Returns the maximum possible antenna gain independent of any direction. More...
 
virtual double computeGain (const Quaternion &direction) const =0
 Returns the antenna gain in the provided direction. More...
 
- Public Member Functions inherited from inet::IPrintableObject
virtual ~IPrintableObject ()
 
virtual std::ostream & printToStream (std::ostream &stream, int level, int evFlags=0) const
 Prints this object to the provided output stream. More...
 
virtual std::string printToString () const
 
virtual std::string printToString (int level, int evFlags=0) const
 
virtual std::string getInfoStringRepresentation (int evFlags=0) const
 
virtual std::string getDetailStringRepresentation (int evFlags=0) const
 
virtual std::string getDebugStringRepresentation (int evFlags=0) const
 
virtual std::string getTraceStringRepresentation (int evFlags=0) const
 
virtual std::string getCompleteStringRepresentation (int evFlags=0) const
 
- Public Member Functions inherited from inet::IntrusivePtrCounter< IAntennaGain >
INET_ALWAYS_INLINE IntrusivePtrCounter () noexcept
 
INET_ALWAYS_INLINE IntrusivePtrCounter (IntrusivePtrCounter const &) noexcept
 
INET_ALWAYS_INLINE unsigned int use_count () const noexcept
 
INET_ALWAYS_INLINE IntrusivePtrCounteroperator= (IntrusivePtrCounter const &) noexcept
 
INET_ALWAYS_INLINE IntrusivePtr< IAntennaGainshared_from_this ()
 

Additional Inherited Members

- Public Types inherited from inet::IPrintableObject
enum  PrintLevel {
  PRINT_LEVEL_TRACE, PRINT_LEVEL_DEBUG, PRINT_LEVEL_DETAIL, PRINT_LEVEL_INFO,
  PRINT_LEVEL_COMPLETE = INT_MIN
}
 
enum  PrintFlag { PRINT_FLAG_FORMATTED = (1 << 0), PRINT_FLAG_MULTILINE = (1 << 1) }
 
- Protected Member Functions inherited from inet::IntrusivePtrCounter< IAntennaGain >
INET_ALWAYS_INLINE ~IntrusivePtrCounter ()=default
 

Detailed Description

This interface represents the directional selectivity of an antenna.

Member Function Documentation

◆ computeGain()

virtual double inet::physicallayer::IAntennaGain::computeGain ( const Quaternion direction) const
pure virtual

Returns the antenna gain in the provided direction.

The direction is determined by rotating the X axis using the given quaternion. The direction is to be interpreted in the local coordinate system of the radiation pattern. This way the gain depends only on the antenna radion pattern characteristics, and not on the antenna orientation determined by the antenna's mobility model.

For transmissions, it determines how well the antenna converts input power into radio waves headed in the specified direction. For receptions, it determines how well the antenna converts radio waves arriving from the specified direction.

Implemented in inet::physicallayer::InterpolatingAntenna::AntennaGain, inet::physicallayer::AxiallySymmetricAntenna::AntennaGain, inet::physicallayer::DipoleAntenna::AntennaGain, inet::physicallayer::CosineAntenna::AntennaGain, inet::physicallayer::ConstantGainAntenna::AntennaGain, inet::physicallayer::ParabolicAntenna::AntennaGain, and inet::physicallayer::IsotropicAntenna::AntennaGain.

Referenced by inet::physicallayer::AnalogModelBase::computeAntennaGain(), and inet::physicallayer::AntennaGainFunction::getValue().

◆ getMaxGain()

◆ getMinGain()


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