INET Framework for OMNeT++/OMNEST
|
This interface represents the whole radio medium. More...
#include <IRadioMedium.h>
Public Member Functions | |
virtual const IMaterial * | getMaterial () const =0 |
Returns the material of the radio medium. More... | |
virtual const IPropagation * | getPropagation () const =0 |
Returns the radio signal propagation model of this radio medium. More... | |
virtual const IPathLoss * | getPathLoss () const =0 |
Returns the radio signal path loss model of this radio medium. More... | |
virtual const IObstacleLoss * | getObstacleLoss () const =0 |
Returns the radio signal obstacle loss model of this radio medium. More... | |
virtual const IAnalogModel * | getAnalogModel () const =0 |
Returns the radio signal analog model of this radio medium. More... | |
virtual const IBackgroundNoise * | getBackgroundNoise () const =0 |
Returns the background noise model of this radio medium. More... | |
virtual const IPhysicalEnvironment * | getPhysicalEnvironment () const =0 |
Returns the physical environment model of this radio medium. More... | |
virtual const IMediumLimitCache * | getMediumLimitCache () const =0 |
virtual const INeighborCache * | getNeighborCache () const =0 |
virtual const ICommunicationCache * | getCommunicationCache () const =0 |
virtual void | addRadio (const IRadio *radio)=0 |
Adds a new radio to the radio medium. More... | |
virtual void | removeRadio (const IRadio *radio)=0 |
Removes a radio from the radio medium. More... | |
virtual IRadioFrame * | transmitPacket (const IRadio *transmitter, cPacket *macFrame)=0 |
Returns a new radio frame containing the radio signal transmission that represents the provided MAC frame. More... | |
virtual cPacket * | receivePacket (const IRadio *receiver, IRadioFrame *radioFrame)=0 |
Returns the MAC frame that was transmitted in the provided radio frame. More... | |
virtual const IListeningDecision * | listenOnMedium (const IRadio *receiver, const IListening *listening) const =0 |
Returns the listening decision that describes what the receiver detects on the radio medium. More... | |
virtual const IArrival * | getArrival (const IRadio *receiver, const ITransmission *transmission) const =0 |
Returns the space and time coordinates of the transmission arriving at the provided receiver. More... | |
virtual const IListening * | getListening (const IRadio *receiver, const ITransmission *transmission) const =0 |
Returns how the radio is listening on the medium when the transmission arrives at the provided receiver. More... | |
virtual const IReception * | getReception (const IRadio *receiver, const ITransmission *transmission) const =0 |
Returns the reception of the transmission arriving at the provided receiver. More... | |
virtual const IInterference * | getInterference (const IRadio *receiver, const ITransmission *transmission) const =0 |
Returns the interference of the transmission arriving at the provided receiver. More... | |
virtual const INoise * | getNoise (const IRadio *receiver, const ITransmission *transmission) const =0 |
Returns the total noise computed from the interference of the transmission arriving at the provided receiver. More... | |
virtual const ISNIR * | getSNIR (const IRadio *receiver, const ITransmission *transmission) const =0 |
Returns the signal to noise and interference ratio of the transmission arriving at the provided receiver. More... | |
virtual bool | isReceptionPossible (const IRadio *receiver, const ITransmission *transmission, IRadioSignal::SignalPart part) const =0 |
Returns true when the reception is possible of the transmission part. More... | |
virtual bool | isReceptionAttempted (const IRadio *receiver, const ITransmission *transmission, IRadioSignal::SignalPart part) const =0 |
Returns true when the reception is attempted of the transmission part. More... | |
virtual bool | isReceptionSuccessful (const IRadio *receiver, const ITransmission *transmission, IRadioSignal::SignalPart part) const =0 |
Returns true when the reception is successful of the transmission part. More... | |
virtual const IReceptionDecision * | getReceptionDecision (const IRadio *receiver, const IListening *listening, const ITransmission *transmission, IRadioSignal::SignalPart part) const =0 |
Returns the reception decision for the transmission part that specifies whether the reception is possible, attempted, and successful. More... | |
virtual const IReceptionResult * | getReceptionResult (const IRadio *receiver, const IListening *listening, const ITransmission *transmission) const =0 |
Returns the reception result for the transmission that describes the end result of the reception process. More... | |
Public Member Functions inherited from inet::physicallayer::IPrintableObject | |
virtual | ~IPrintableObject () |
virtual std::ostream & | printToStream (std::ostream &stream, int level) const |
Prints this object to the provided output stream. More... | |
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 |
Static Public Attributes | |
static simsignal_t | radioAddedSignal = cComponent::registerSignal("radioAdded") |
static simsignal_t | radioRemovedSignal = cComponent::registerSignal("radioRemoved") |
static simsignal_t | transmissionAddedSignal = cComponent::registerSignal("transmissionAdded") |
static simsignal_t | transmissionRemovedSignal = cComponent::registerSignal("transmissionRemoved") |
static simsignal_t | transmissionStartedSignal = cComponent::registerSignal("transmissionStarted") |
static simsignal_t | transmissionEndedSignal = cComponent::registerSignal("transmissionEnded") |
static simsignal_t | receptionStartedSignal = cComponent::registerSignal("receptionStarted") |
static simsignal_t | receptionEndedSignal = cComponent::registerSignal("receptionEnded") |
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 interface represents the whole radio medium.
It keeps track of all radio signal sources, all radio signal transmissions, and all radio signal receptions.
This interface supports optimistic parallel computation of reception decisions and related information.
|
pure virtual |
Adds a new radio to the radio medium.
An exception is thrown if the radio is already added. The radio may immediately start new transmissions and will potentially receive all ongoing and further transmissions.
Implemented in inet::physicallayer::RadioMedium.
Referenced by inet::physicallayer::Radio::initialize().
|
pure virtual |
Returns the radio signal analog model of this radio medium.
This function never returns nullptr.
Implemented in inet::physicallayer::RadioMedium.
Referenced by inet::physicallayer::FlatReceiverBase::computeListeningDecision(), inet::physicallayer::APSKLayeredReceiver::computeListeningDecision(), and inet::physicallayer::Ieee80211LayeredOFDMReceiver::computeListeningDecision().
|
pure virtual |
Returns the space and time coordinates of the transmission arriving at the provided receiver.
This function never returns nullptr as long as the transmission is live on the radio medium.
Implemented in inet::physicallayer::RadioMedium.
Referenced by inet::physicallayer::RadioFrame::getArrival().
|
pure virtual |
Returns the background noise model of this radio medium.
This function may return nullptr if there's no background noise model.
Implemented in inet::physicallayer::RadioMedium.
|
pure virtual |
Implemented in inet::physicallayer::RadioMedium.
Referenced by inet::visualizer::MediumVisualizerBase::isSignalPropagationInProgress().
|
pure virtual |
Returns the interference of the transmission arriving at the provided receiver.
This function never returns nullptr as long as the transmission is live on the radio medium.
Implemented in inet::physicallayer::RadioMedium.
|
pure virtual |
Returns how the radio is listening on the medium when the transmission arrives at the provided receiver.
This function never returns nullptr as long as the transmission is live on the radio medium.
Implemented in inet::physicallayer::RadioMedium.
Referenced by inet::physicallayer::RadioFrame::getListening().
|
pure virtual |
Returns the material of the radio medium.
This function never returns nullptr.
Implemented in inet::physicallayer::RadioMedium.
Referenced by inet::physicallayer::DielectricObstacleLoss::computeObjectLoss().
|
pure virtual |
Implemented in inet::physicallayer::RadioMedium.
Referenced by inet::visualizer::MediumVisualizerBase::initialize(), inet::visualizer::MediumCanvasVisualizer::initialize(), inet::visualizer::MediumVisualizerBase::isSignalPropagationInProgress(), and inet::visualizer::MediumCanvasVisualizer::receptionStarted().
|
pure virtual |
Implemented in inet::physicallayer::RadioMedium.
|
pure virtual |
Returns the total noise computed from the interference of the transmission arriving at the provided receiver.
This function never returns nullptr as long as the transmission is live on the radio medium.
Implemented in inet::physicallayer::RadioMedium.
|
pure virtual |
Returns the radio signal obstacle loss model of this radio medium.
This function may return nullptr if there's no obstacle loss model.
Implemented in inet::physicallayer::RadioMedium.
Referenced by inet::physicallayer::IdealAnalogModel::computeReception(), inet::physicallayer::ScalarAnalogModelBase::computeReceptionPower(), and inet::physicallayer::DimensionalAnalogModelBase::computeReceptionPower().
|
pure virtual |
Returns the radio signal path loss model of this radio medium.
This function never returns nullptr.
Implemented in inet::physicallayer::RadioMedium.
Referenced by inet::physicallayer::MediumLimitCache::computeMaxRange(), inet::physicallayer::ScalarAnalogModelBase::computeReceptionPower(), and inet::physicallayer::DimensionalAnalogModelBase::computeReceptionPower().
|
pure virtual |
Returns the physical environment model of this radio medium.
This function may return nullptr if there's no physical environment model.
Implemented in inet::physicallayer::RadioMedium.
|
pure virtual |
Returns the radio signal propagation model of this radio medium.
This function never returns nullptr.
Implemented in inet::physicallayer::RadioMedium.
Referenced by inet::physicallayer::MediumLimitCache::computeMaxRange(), inet::physicallayer::DimensionalAnalogModelBase::computeReceptionPower(), inet::NetworkConfiguratorBase::computeWirelessLinkWeight(), inet::visualizer::MediumVisualizerBase::initialize(), and inet::visualizer::MediumCanvasVisualizer::refreshSignalFigure().
|
pure virtual |
Returns the reception of the transmission arriving at the provided receiver.
This function never returns nullptr as long as the transmission is live on the radio medium.
Implemented in inet::physicallayer::RadioMedium.
Referenced by inet::physicallayer::RadioFrame::getReception().
|
pure virtual |
Returns the reception decision for the transmission part that specifies whether the reception is possible, attempted, and successful.
Implemented in inet::physicallayer::RadioMedium.
Referenced by inet::physicallayer::Radio::endReception().
|
pure virtual |
Returns the reception result for the transmission that describes the end result of the reception process.
Implemented in inet::physicallayer::RadioMedium.
|
pure virtual |
Returns the signal to noise and interference ratio of the transmission arriving at the provided receiver.
This function never returns nullptr as long as the transmission is live on the radio medium.
Implemented in inet::physicallayer::RadioMedium.
|
pure virtual |
Returns true when the reception is attempted of the transmission part.
Implemented in inet::physicallayer::RadioMedium.
Referenced by inet::physicallayer::Radio::continueReception(), and inet::physicallayer::Radio::startReception().
|
pure virtual |
Returns true when the reception is possible of the transmission part.
Implemented in inet::physicallayer::RadioMedium.
|
pure virtual |
Returns true when the reception is successful of the transmission part.
Implemented in inet::physicallayer::RadioMedium.
Referenced by inet::physicallayer::Radio::continueReception().
|
pure virtual |
Returns the listening decision that describes what the receiver detects on the radio medium.
Implemented in inet::physicallayer::RadioMedium.
Referenced by inet::physicallayer::Radio::isListeningPossible().
|
pure virtual |
Returns the MAC frame that was transmitted in the provided radio frame.
The MAC frame control info will be an instance of the ReceptionIndication class.
Implemented in inet::physicallayer::RadioMedium.
Referenced by inet::physicallayer::Radio::endReception().
|
pure virtual |
Removes a radio from the radio medium.
An exception is thrown if the radio is not yet added. The radio cannot start new transmissions and will not receive any further transmission including the ongoing ones.
Implemented in inet::physicallayer::RadioMedium.
|
pure virtual |
Returns a new radio frame containing the radio signal transmission that represents the provided MAC frame.
A copy of this radio frame is sent to all affected radios. The MAC frame control info must be an instance of the TransmissionRequest class.
Implemented in inet::physicallayer::RadioMedium.
Referenced by inet::physicallayer::Radio::createRadioFrame().
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |