INET Framework for OMNeT++/OMNEST
inet::physicallayer::DimensionalAnalogModel Class Reference

#include <DimensionalAnalogModel.h>

Inheritance diagram for inet::physicallayer::DimensionalAnalogModel:
inet::physicallayer::DimensionalAnalogModelBase inet::physicallayer::AnalogModelBase inet::physicallayer::IAnalogModel inet::IPrintableObject

Public Member Functions

virtual std::ostream & printToStream (std::ostream &stream, int level, int evFlags=0) const override
 Prints this object to the provided output stream. More...
 
virtual const IReceptioncomputeReception (const IRadio *radio, const ITransmission *transmission, const IArrival *arrival) const override
 Returns the reception for the provided transmission at the receiver. More...
 
- Public Member Functions inherited from inet::physicallayer::DimensionalAnalogModelBase
virtual const Ptr< const IFunction< WpHz, Domain< simsec, Hz > > > computeReceptionPower (const IRadio *radio, const ITransmission *transmission, const IArrival *arrival) const
 
virtual const INoisecomputeNoise (const IListening *listening, const IInterference *interference) const override
 Returns the total noise summing up all the interfering receptions and noises. More...
 
virtual const INoisecomputeNoise (const IReception *reception, const INoise *noise) const override
 Returns the total noise summing up all the reception and the noise. More...
 
virtual const ISnircomputeSNIR (const IReception *reception, const INoise *noise) const override
 Returns the signal to noise and interference ratio. More...
 
- Public Member Functions inherited from inet::IPrintableObject
virtual ~IPrintableObject ()
 
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
 

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::physicallayer::DimensionalAnalogModelBase
virtual void initialize (int stage) override
 
- Protected Member Functions inherited from inet::physicallayer::AnalogModelBase
virtual double computeAntennaGain (const IAntennaGain *antenna, const Coord &startPosition, const Coord &endPosition, const Quaternion &startOrientation) const
 
- Protected Attributes inherited from inet::physicallayer::DimensionalAnalogModelBase
bool attenuateWithCenterFrequency
 

Member Function Documentation

◆ computeReception()

const IReception * inet::physicallayer::DimensionalAnalogModel::computeReception ( const IRadio receiver,
const ITransmission transmission,
const IArrival arrival 
) const
overridevirtual

Returns the reception for the provided transmission at the receiver.

The result incorporates all modeled attenuation. This function never returns nullptr.

Implements inet::physicallayer::IAnalogModel.

30 {
31  const DimensionalTransmission *dimensionalTransmission = check_and_cast<const DimensionalTransmission *>(transmission);
32  const simtime_t receptionStartTime = arrival->getStartTime();
33  const simtime_t receptionEndTime = arrival->getEndTime();
34  const Coord& receptionStartPosition = arrival->getStartPosition();
35  const Coord& receptionEndPosition = arrival->getEndPosition();
36  const Quaternion& receptionStartOrientation = arrival->getStartOrientation();
37  const Quaternion& receptionEndOrientation = arrival->getEndOrientation();
38  const Ptr<const IFunction<WpHz, Domain<simsec, Hz>>>& receptionPower = computeReceptionPower(receiverRadio, transmission, arrival);
39  return new DimensionalReception(receiverRadio, transmission, receptionStartTime, receptionEndTime, receptionStartPosition, receptionEndPosition, receptionStartOrientation, receptionEndOrientation, dimensionalTransmission->getCenterFrequency(), dimensionalTransmission->getBandwidth(), receptionPower);
40 }

◆ printToStream()

std::ostream & inet::physicallayer::DimensionalAnalogModel::printToStream ( std::ostream &  stream,
int  level,
int  evFlags = 0 
) const
overridevirtual

Prints this object to the provided output stream.

Reimplemented from inet::IPrintableObject.

24 {
25  stream << "DimensionalAnalogModel";
26  return DimensionalAnalogModelBase::printToStream(stream, level);
27 }

The documentation for this class was generated from the following files:
inet::IPrintableObject::printToStream
virtual std::ostream & printToStream(std::ostream &stream, int level, int evFlags=0) const
Prints this object to the provided output stream.
Definition: IPrintableObject.h:40
inet::physicallayer::DimensionalAnalogModelBase::computeReceptionPower
virtual const Ptr< const IFunction< WpHz, Domain< simsec, Hz > > > computeReceptionPower(const IRadio *radio, const ITransmission *transmission, const IArrival *arrival) const
Definition: DimensionalAnalogModelBase.cc:29