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

#include <LayeredDimensionalAnalogModel.h>

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

Public Member Functions

virtual std::ostream & printToStream (std::ostream &stream, int level) 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 ConstMappingcomputeReceptionPower (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 ISNIRcomputeSNIR (const IReception *reception, const INoise *noise) const override
 Returns the signal to noise and interference ratio. 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
 

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
}
 
- Protected Member Functions inherited from inet::physicallayer::DimensionalAnalogModelBase
virtual void initialize (int stage) override
 
- Protected Member Functions inherited from inet::physicallayer::AnalogModelBase
virtual EulerAngles computeTransmissionDirection (const ITransmission *transmission, const IArrival *arrival) const
 
- Protected Attributes inherited from inet::physicallayer::DimensionalAnalogModelBase
bool attenuateWithCarrierFrequency
 
Mapping::InterpolationMethod interpolationMode
 

Member Function Documentation

const IReception * inet::physicallayer::LayeredDimensionalAnalogModel::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.

40 {
41  const simtime_t receptionStartTime = arrival->getStartTime();
42  const simtime_t receptionEndTime = arrival->getEndTime();
43  const EulerAngles receptionStartOrientation = arrival->getStartOrientation();
44  const EulerAngles receptionEndOrientation = arrival->getEndOrientation();
45  const Coord receptionStartPosition = arrival->getStartPosition();
46  const Coord receptionEndPosition = arrival->getEndPosition();
47  const LayeredTransmission *layeredTransmission = check_and_cast<const LayeredTransmission *>(transmission);
48  const DimensionalTransmissionSignalAnalogModel *transmissionSignalAnalogModel = check_and_cast<const DimensionalTransmissionSignalAnalogModel *>(layeredTransmission->getAnalogModel());
49  const ConstMapping *receptionPower = computeReceptionPower(receiverRadio, transmission, arrival);
50  const DimensionalReceptionSignalAnalogModel *receptionSignalAnalogModel = new const DimensionalReceptionSignalAnalogModel(transmissionSignalAnalogModel->getDuration(), transmissionSignalAnalogModel->getCarrierFrequency(), transmissionSignalAnalogModel->getBandwidth(), receptionPower);
51  return new LayeredReception(receptionSignalAnalogModel, receiverRadio, transmission, receptionStartTime, receptionEndTime, receptionStartPosition, receptionEndPosition, receptionStartOrientation, receptionEndOrientation);
52 }
virtual const ConstMapping * computeReceptionPower(const IRadio *radio, const ITransmission *transmission, const IArrival *arrival) const
Definition: DimensionalAnalogModelBase.cc:52
std::ostream & inet::physicallayer::LayeredDimensionalAnalogModel::printToStream ( std::ostream &  stream,
int  level 
) const
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::DimensionalAnalogModelBase.

34 {
35  stream << "LayeredDimensionalAnalogModel";
36  return DimensionalAnalogModelBase::printToStream(stream, level);
37 }
virtual std::ostream & printToStream(std::ostream &stream, int level) const override
Prints this object to the provided output stream.
Definition: DimensionalAnalogModelBase.cc:44

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