|
INET Framework for OMNeT++/OMNEST
|
This interface represents the transmission of a radio signal. More...
#include <ITransmission.h>
Public Member Functions | |
| virtual int | getId () const =0 |
| Returns an identifier for this transmission which is globally unique for the whole lifetime of the simulation among all transmissions. More... | |
| virtual const IRadio * | getTransmitter () const =0 |
| Returns the transmitter that transmitted this radio signal on the radio channel. More... | |
| virtual int | getTransmitterId () const =0 |
| Returns the transmitter's id that transmitted this radio signal on the radio channel. More... | |
| virtual const IAntennaGain * | getTransmitterAntennaGain () const =0 |
| Returns the gain of the transmitting antenna. More... | |
| virtual const IRadioMedium * | getMedium () const =0 |
| Returns the radio medium used for this transmission. More... | |
| virtual const Packet * | getPacket () const =0 |
| Returns the packet corresponding to this transmission. More... | |
| virtual const simtime_t | getStartTime () const =0 |
| Returns the time when the transmitter started this transmission. More... | |
| virtual const simtime_t | getEndTime () const =0 |
| Returns the time when the transmitter ended this transmission. More... | |
| virtual const simtime_t | getStartTime (IRadioSignal::SignalPart part) const =0 |
| virtual const simtime_t | getEndTime (IRadioSignal::SignalPart part) const =0 |
| virtual const simtime_t | getPreambleStartTime () const =0 |
| virtual const simtime_t | getPreambleEndTime () const =0 |
| virtual const simtime_t | getHeaderStartTime () const =0 |
| virtual const simtime_t | getHeaderEndTime () const =0 |
| virtual const simtime_t | getDataStartTime () const =0 |
| virtual const simtime_t | getDataEndTime () const =0 |
| virtual const simtime_t | getDuration () const =0 |
| Returns the total length of this transmission. More... | |
| virtual const simtime_t | getDuration (IRadioSignal::SignalPart part) const =0 |
| Returns the length of the provided part of this transmission. More... | |
| virtual const simtime_t | getPreambleDuration () const =0 |
| Returns the length of the preamble part of this transmission. More... | |
| virtual const simtime_t | getHeaderDuration () const =0 |
| Returns the length of the header part of this transmission. More... | |
| virtual const simtime_t | getDataDuration () const =0 |
| Returns the length of the data part of this transmission. More... | |
| virtual const Coord & | getStartPosition () const =0 |
| Returns the antenna's position when the transmitter started this transmission. More... | |
| virtual const Coord & | getEndPosition () const =0 |
| Returns the antenna's position when the transmitter ended this transmission. More... | |
| virtual const Quaternion & | getStartOrientation () const =0 |
| Returns the antenna's orientation when the transmitter started this transmission. More... | |
| virtual const Quaternion & | getEndOrientation () const =0 |
| Returns the antenna's orientation when the transmitter ended this transmission. More... | |
| virtual const ITransmissionAnalogModel * | getAnalogModel () const =0 |
| Returns the analog model of the transmitted signal. 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 |
Static Protected Attributes | |
| static int | nextId = 0 |
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) } |
This interface represents the transmission of a radio signal.
There's one instance per transmission of this interface that is sent to all potential receiver radios in a separate signal instance.
This interface is strictly immutable to safely support parallel computation.
|
pure virtual |
Returns the analog model of the transmitted signal.
Implemented in inet::physicallayer::TransmissionBase, and inet::physicallayer::LayeredTransmission.
Referenced by inet::physicallayer::PathLossBase::computePathLoss(), inet::physicallayer::TwoRayInterference::computePathLoss(), inet::physicallayer::ScalarAnalogModel::computeReception(), inet::physicallayer::DimensionalAnalogModelBase::computeReceptionPower(), inet::physicallayer::ScalarAnalogModelBase::computeReceptionPower(), and inet::physicallayer::TwoRayGroundReflection::initialize().
|
pure virtual |
Returns the length of the data part of this transmission.
Implemented in inet::physicallayer::TransmissionBase.
Referenced by inet::physicallayer::ConstantTimePropagation::computeArrival(), and inet::physicallayer::ConstantSpeedPropagation::computeArrival().
|
pure virtual |
Implemented in inet::physicallayer::TransmissionBase.
|
pure virtual |
Implemented in inet::physicallayer::TransmissionBase.
|
pure virtual |
Returns the total length of this transmission.
Implemented in inet::physicallayer::TransmissionBase.
Referenced by inet::physicallayer::RadioMedium::createReceiverSignal(), inet::physicallayer::NoiseSource::scheduleTransmissionTimer(), and inet::physicallayer::RadioMedium::sendToRadio().
|
pure virtual |
Returns the length of the provided part of this transmission.
Implemented in inet::physicallayer::TransmissionBase.
|
pure virtual |
Returns the antenna's orientation when the transmitter ended this transmission.
Implemented in inet::physicallayer::TransmissionBase.
|
pure virtual |
Returns the antenna's position when the transmitter ended this transmission.
Implemented in inet::physicallayer::TransmissionBase.
Referenced by inet::physicallayer::ConstantSpeedPropagation::computeArrival(), inet::physicallayer::RadioMedium::isInCommunicationRange(), inet::physicallayer::RadioMedium::isInInterferenceRange(), and inet::physicallayer::CommunicationLog::writeTransmission().
|
pure virtual |
Returns the time when the transmitter ended this transmission.
It is the end of the last bit's transmission.
Implemented in inet::physicallayer::TransmissionBase.
Referenced by inet::physicallayer::RadioMedium::addTransmission(), inet::physicallayer::ConstantTimePropagation::computeArrival(), inet::physicallayer::ConstantSpeedPropagation::computeArrival(), and inet::physicallayer::CommunicationLog::writeTransmission().
|
pure virtual |
Implemented in inet::physicallayer::TransmissionBase.
|
pure virtual |
Returns the length of the header part of this transmission.
Implemented in inet::physicallayer::TransmissionBase.
Referenced by inet::physicallayer::ConstantTimePropagation::computeArrival(), and inet::physicallayer::ConstantSpeedPropagation::computeArrival().
|
pure virtual |
Implemented in inet::physicallayer::TransmissionBase.
|
pure virtual |
Implemented in inet::physicallayer::TransmissionBase.
|
pure virtual |
Returns an identifier for this transmission which is globally unique for the whole lifetime of the simulation among all transmissions.
Implemented in inet::physicallayer::TransmissionBase.
Referenced by inet::physicallayer::ReferenceCommunicationCache::addTransmission(), inet::physicallayer::VectorCommunicationCache::addTransmission(), inet::physicallayer::ReceiverBase::computeIsReceptionAttempted(), inet::physicallayer::ReferenceCommunicationCache::getTransmissionCacheEntry(), inet::physicallayer::MapCommunicationCache::getTransmissionCacheEntry(), inet::physicallayer::VectorCommunicationCache::getTransmissionCacheEntry(), inet::physicallayer::ReceptionBase::printToStream(), inet::physicallayer::MapCommunicationCache::removeTransmission(), inet::physicallayer::VectorCommunicationCache::removeTransmission(), inet::physicallayer::CommunicationLog::writeReception(), and inet::physicallayer::CommunicationLog::writeTransmission().
|
pure virtual |
Returns the radio medium used for this transmission.
This function never return nullptr.
Implemented in inet::physicallayer::TransmissionBase.
Referenced by inet::physicallayer::PathLossBase::computePathLoss(), inet::physicallayer::TwoRayInterference::computePathLoss(), inet::physicallayer::ReceiverBase::computeSignalPower(), and inet::physicallayer::TwoRayGroundReflection::initialize().
|
pure virtual |
Returns the packet corresponding to this transmission.
This function never returns nullptr.
Implemented in inet::physicallayer::TransmissionBase, and inet::physicallayer::LayeredTransmission.
Referenced by inet::physicallayer::ErrorModelBase::computeCorruptedPacket(), inet::physicallayer::ReceiverBase::computeReceivedPacket(), inet::physicallayer::RadioMedium::createReceiverSignal(), inet::physicallayer::RadioMedium::isPotentialReceiver(), and inet::physicallayer::RadioMedium::pickUpSignals().
|
pure virtual |
Returns the length of the preamble part of this transmission.
Implemented in inet::physicallayer::TransmissionBase.
Referenced by inet::physicallayer::ConstantTimePropagation::computeArrival(), and inet::physicallayer::ConstantSpeedPropagation::computeArrival().
|
pure virtual |
Implemented in inet::physicallayer::TransmissionBase.
|
pure virtual |
Implemented in inet::physicallayer::TransmissionBase.
|
pure virtual |
Returns the antenna's orientation when the transmitter started this transmission.
Implemented in inet::physicallayer::TransmissionBase.
Referenced by inet::physicallayer::DimensionalAnalogModelBase::computeReceptionPower(), and inet::physicallayer::ScalarAnalogModelBase::computeReceptionPower().
|
pure virtual |
Returns the antenna's position when the transmitter started this transmission.
Implemented in inet::physicallayer::TransmissionBase.
Referenced by inet::physicallayer::ConstantSpeedPropagation::computeArrival(), inet::physicallayer::PathLossBase::computePathLoss(), inet::physicallayer::TwoRayInterference::computePathLoss(), inet::physicallayer::UnitDiskAnalogModel::computeReception(), inet::physicallayer::DimensionalAnalogModelBase::computeReceptionPower(), inet::physicallayer::ScalarAnalogModelBase::computeReceptionPower(), inet::physicallayer::TwoRayGroundReflection::initialize(), inet::physicallayer::RadioMedium::isInCommunicationRange(), inet::physicallayer::RadioMedium::isInInterferenceRange(), inet::physicallayer::RadioMedium::pickUpSignals(), inet::physicallayer::RadioMedium::sendToRadio(), and inet::physicallayer::CommunicationLog::writeTransmission().
|
pure virtual |
Returns the time when the transmitter started this transmission.
It is the start of the first bit's transmission.
Implemented in inet::physicallayer::TransmissionBase.
Referenced by inet::physicallayer::ConstantTimePropagation::computeArrival(), inet::physicallayer::ConstantSpeedPropagation::computeArrival(), inet::physicallayer::DimensionalAnalogModelBase::computeReceptionPower(), and inet::physicallayer::CommunicationLog::writeTransmission().
|
pure virtual |
Implemented in inet::physicallayer::TransmissionBase.
|
pure virtual |
Returns the transmitter that transmitted this radio signal on the radio channel.
This function may return nullptr.
Implemented in inet::physicallayer::TransmissionBase.
Referenced by inet::physicallayer::WirelessSignal::getTransmitter().
|
pure virtual |
Returns the gain of the transmitting antenna.
Implemented in inet::physicallayer::TransmissionBase.
Referenced by inet::physicallayer::DimensionalAnalogModelBase::computeReceptionPower(), and inet::physicallayer::ScalarAnalogModelBase::computeReceptionPower().
|
pure virtual |
Returns the transmitter's id that transmitted this radio signal on the radio channel.
Implemented in inet::physicallayer::TransmissionBase.
Referenced by inet::physicallayer::RadioMedium::isInterferingTransmission(), and inet::physicallayer::RadioMedium::pickUpSignals().
|
staticprotected |