INET Framework for OMNeT++/OMNEST
|
The default implementation of the radio medium interface. More...
#include <RadioMedium.h>
Public Member Functions | |
RadioMedium () | |
virtual | ~RadioMedium () |
virtual std::ostream & | printToStream (std::ostream &stream, int level) const override |
Prints this object to the provided output stream. More... | |
virtual const IMaterial * | getMaterial () const override |
Returns the material of the radio medium. More... | |
virtual const IPropagation * | getPropagation () const override |
Returns the radio signal propagation model of this radio medium. More... | |
virtual const IPathLoss * | getPathLoss () const override |
Returns the radio signal path loss model of this radio medium. More... | |
virtual const IObstacleLoss * | getObstacleLoss () const override |
Returns the radio signal obstacle loss model of this radio medium. More... | |
virtual const IAnalogModel * | getAnalogModel () const override |
Returns the radio signal analog model of this radio medium. More... | |
virtual const IBackgroundNoise * | getBackgroundNoise () const override |
Returns the background noise model of this radio medium. More... | |
virtual const IPhysicalEnvironment * | getPhysicalEnvironment () const override |
Returns the physical environment model of this radio medium. More... | |
virtual const IMediumLimitCache * | getMediumLimitCache () const override |
virtual const INeighborCache * | getNeighborCache () const override |
virtual const ICommunicationCache * | getCommunicationCache () const override |
virtual void | addRadio (const IRadio *radio) override |
Adds a new radio to the radio medium. More... | |
virtual void | removeRadio (const IRadio *radio) override |
Removes a radio from the radio medium. More... | |
virtual void | sendToRadio (IRadio *trasmitter, const IRadio *receiver, const IRadioFrame *frame) |
virtual IRadioFrame * | transmitPacket (const IRadio *transmitter, cPacket *macFrame) override |
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) override |
Returns the MAC frame that was transmitted in the provided radio frame. More... | |
virtual const IListeningDecision * | listenOnMedium (const IRadio *receiver, const IListening *listening) const override |
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 override |
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 override |
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 override |
Returns the reception of the transmission arriving at the provided receiver. More... | |
virtual const IInterference * | getInterference (const IRadio *receiver, const ITransmission *transmission) const override |
Returns the interference of the transmission arriving at the provided receiver. More... | |
virtual const IInterference * | getInterference (const IRadio *receiver, const IListening *listening, const ITransmission *transmission) const |
virtual const INoise * | getNoise (const IRadio *receiver, const ITransmission *transmission) const override |
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 override |
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 override |
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 override |
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 override |
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 override |
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 override |
Returns the reception result for the transmission that describes the end result of the reception process. More... | |
virtual void | receiveSignal (cComponent *source, simsignal_t signal, long value, cObject *details) override |
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 |
Protected Types | |
enum | RangeFilterKind { RANGE_FILTER_ANYWHERE, RANGE_FILTER_INTERFERENCE_RANGE, RANGE_FILTER_COMMUNICATION_RANGE } |
Protected Member Functions | |
Module | |
virtual int | numInitStages () const override |
virtual void | initialize (int stage) override |
virtual void | finish () override |
virtual void | handleMessage (cMessage *message) override |
Transmission | |
virtual void | addTransmission (const IRadio *transmitter, const ITransmission *transmission) |
Adds a new transmission to the radio medium. More... | |
virtual IRadioFrame * | createTransmitterRadioFrame (const IRadio *radio, cPacket *macFrame) |
Creates a new radio frame for the transmitter. More... | |
virtual IRadioFrame * | createReceiverRadioFrame (const ITransmission *transmission) |
Creates a new radio frame for a receiver. More... | |
virtual void | sendToAffectedRadios (IRadio *transmitter, const IRadioFrame *frame) |
Sends a copy of the provided radio frame to all affected receivers on the radio medium. More... | |
virtual void | sendToAllRadios (IRadio *transmitter, const IRadioFrame *frame) |
Sends a copy of the provided radio frame to all receivers on the radio medium. More... | |
Reception | |
virtual bool | isRadioMacAddress (const IRadio *radio, const MACAddress address) const |
virtual bool | isPotentialReceiver (const IRadio *receiver, const ITransmission *transmission) const |
Returns true if the radio can potentially receive the transmission successfully. More... | |
virtual bool | isInCommunicationRange (const ITransmission *transmission, const Coord startPosition, const Coord endPosition) const |
virtual bool | isInInterferenceRange (const ITransmission *transmission, const Coord startPosition, const Coord endPosition) const |
virtual bool | isInterferingTransmission (const ITransmission *transmission, const IListening *listening) const |
virtual bool | isInterferingTransmission (const ITransmission *transmission, const IReception *reception) const |
virtual void | removeNonInterferingTransmissions () |
Removes all cached data related to past transmissions that don't have any effect on any ongoing transmission. More... | |
virtual const std::vector< const IReception * > * | computeInterferingReceptions (const IListening *listening, const std::vector< const ITransmission * > *transmissions) const |
virtual const std::vector< const IReception * > * | computeInterferingReceptions (const IReception *reception, const std::vector< const ITransmission * > *transmissions) const |
virtual const IReception * | computeReception (const IRadio *receiver, const ITransmission *transmission) const |
virtual const IInterference * | computeInterference (const IRadio *receiver, const IListening *listening, const std::vector< const ITransmission * > *transmissions) const |
virtual const IInterference * | computeInterference (const IRadio *receiver, const IListening *listening, const ITransmission *transmission, const std::vector< const ITransmission * > *transmissions) const |
virtual const IReceptionDecision * | computeReceptionDecision (const IRadio *receiver, const IListening *listening, const ITransmission *transmission, IRadioSignal::SignalPart part, const std::vector< const ITransmission * > *transmissions) const |
virtual const IReceptionResult * | computeReceptionResult (const IRadio *receiver, const IListening *listening, const ITransmission *transmission, const std::vector< const ITransmission * > *transmissions) const |
virtual const IListeningDecision * | computeListeningDecision (const IRadio *receiver, const IListening *listening, const std::vector< const ITransmission * > *transmissions) const |
Protected Attributes | |
Parameters and other models that control the behavior of the radio medium. | |
const IPropagation * | propagation |
The propagation model is never nullptr. More... | |
const IPathLoss * | pathLoss |
The path loss model is never nullptr. More... | |
const IObstacleLoss * | obstacleLoss |
The obstacle loss model or nullptr if unused. More... | |
const IAnalogModel * | analogModel |
The analog model is never nullptr. More... | |
const IBackgroundNoise * | backgroundNoise |
The background noise model or nullptr if unused. More... | |
const IPhysicalEnvironment * | physicalEnvironment |
The physical environment model or nullptr if unused. More... | |
const IMaterial * | material |
The physical material of the medium is never nullptr. More... | |
RangeFilterKind | rangeFilter |
The radio medium doesn't send radio frames to a radio if it's outside the range provided by the selected range filter. More... | |
bool | radioModeFilter |
True means the radio medium doesn't send radio frames to a radio if it's neither in receiver nor in transceiver mode. More... | |
bool | listeningFilter |
True means the radio medium doesn't send radio frames to a radio if it listens on the medium in incompatible mode (e.g. More... | |
bool | macAddressFilter |
True means the radio medium doesn't send radio frames to a radio if the mac address of the destination is different. More... | |
bool | recordCommunicationLog |
Records all transmissions and receptions into a separate trace file. More... | |
Timer | |
cMessage * | removeNonInterferingTransmissionsTimer |
The message that is used to purge the internal state of the medium. More... | |
State | |
std::vector< const IRadio * > | radios |
The list of radios that can transmit and receive radio signals on the radio medium. More... | |
std::vector< const ITransmission * > | transmissions |
The list of ongoing transmissions on the radio medium. More... | |
Cache | |
IMediumLimitCache * | mediumLimitCache |
Caches various medium limits among all radios. More... | |
INeighborCache * | neighborCache |
Caches neighbors for all radios or nullptr if turned off. More... | |
ICommunicationCache * | communicationCache |
Caches intermediate results of the ongoing communication for all radios. More... | |
Logging | |
CommunicationLog | communicationLog |
The communication log output recorder. More... | |
Statistics | |
long | transmissionCount |
Total number of transmissions. More... | |
long | radioFrameSendCount |
Total number of radio frame sends. More... | |
long | receptionComputationCount |
Total number of reception computations. More... | |
long | interferenceComputationCount |
Total number of interference computations. More... | |
long | receptionDecisionComputationCount |
Total number of data reception decision computations. More... | |
long | receptionResultComputationCount |
Total number of data reception result computations. More... | |
long | listeningDecisionComputationCount |
Total number of listening decision computations. More... | |
long | cacheReceptionGetCount |
Total number of reception cache queries. More... | |
long | cacheReceptionHitCount |
Total number of reception cache hits. More... | |
long | cacheInterferenceGetCount |
Total number of interference cache queries. More... | |
long | cacheInterferenceHitCount |
Total number of interference cache hits. More... | |
long | cacheNoiseGetCount |
Total number of noise cache queries. More... | |
long | cacheNoiseHitCount |
Total number of noise cache hits. More... | |
long | cacheSNIRGetCount |
Total number of SNIR cache queries. More... | |
long | cacheSNIRHitCount |
Total number of SNIR cache hits. More... | |
long | cacheDecisionGetCount |
Total number of reception decision cache queries. More... | |
long | cacheDecisionHitCount |
Total number of reception decision cache hits. More... | |
long | cacheResultGetCount |
Total number of reception result cache queries. More... | |
long | cacheResultHitCount |
Total number of reception result cache hits. More... | |
Private Attributes | |
friend | Radio |
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 } |
Static Public Attributes inherited from inet::physicallayer::IRadioMedium | |
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") |
The default implementation of the radio medium interface.
|
protected |
inet::physicallayer::RadioMedium::RadioMedium | ( | ) |
|
virtual |
|
overridevirtual |
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.
Implements inet::physicallayer::IRadioMedium.
|
protectedvirtual |
Adds a new transmission to the radio medium.
Referenced by transmitPacket().
|
protectedvirtual |
Referenced by computeListeningDecision(), getInterference(), isReceptionAttempted(), isReceptionPossible(), and isReceptionSuccessful().
|
protectedvirtual |
|
protectedvirtual |
Referenced by computeInterference().
|
protectedvirtual |
|
protectedvirtual |
Referenced by listenOnMedium().
|
protectedvirtual |
Referenced by getReception().
|
protectedvirtual |
Referenced by getReceptionDecision().
|
protectedvirtual |
Referenced by getReceptionResult().
|
protectedvirtual |
|
protectedvirtual |
|
overrideprotectedvirtual |
|
inlineoverridevirtual |
Returns the radio signal analog model of this radio medium.
This function never returns nullptr.
Implements inet::physicallayer::IRadioMedium.
|
overridevirtual |
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.
Implements inet::physicallayer::IRadioMedium.
Referenced by computeReception(), isInterferingTransmission(), isPotentialReceiver(), receiveSignal(), and sendToRadio().
|
inlineoverridevirtual |
Returns the background noise model of this radio medium.
This function may return nullptr if there's no background noise model.
Implements inet::physicallayer::IRadioMedium.
|
inlineoverridevirtual |
Implements inet::physicallayer::IRadioMedium.
|
overridevirtual |
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.
Implements inet::physicallayer::IRadioMedium.
Referenced by computeReceptionDecision(), computeReceptionResult(), and getNoise().
|
virtual |
|
overridevirtual |
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.
Implements inet::physicallayer::IRadioMedium.
Referenced by isPotentialReceiver(), isReceptionAttempted(), isReceptionPossible(), and isReceptionSuccessful().
|
inlineoverridevirtual |
Returns the material of the radio medium.
This function never returns nullptr.
Implements inet::physicallayer::IRadioMedium.
|
inlineoverridevirtual |
Implements inet::physicallayer::IRadioMedium.
Referenced by inet::physicallayer::GridNeighborCache::addRadio(), inet::physicallayer::NeighborListNeighborCache::addRadio(), inet::physicallayer::QuadTreeNeighborCache::addRadio(), inet::physicallayer::NeighborListNeighborCache::initialize(), inet::physicallayer::GridNeighborCache::initialize(), inet::physicallayer::QuadTreeNeighborCache::initialize(), inet::physicallayer::GridNeighborCache::removeRadio(), inet::physicallayer::NeighborListNeighborCache::removeRadio(), and inet::physicallayer::QuadTreeNeighborCache::removeRadio().
|
inlineoverridevirtual |
Implements inet::physicallayer::IRadioMedium.
|
overridevirtual |
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.
Implements inet::physicallayer::IRadioMedium.
Referenced by getSNIR().
|
inlineoverridevirtual |
Returns the radio signal obstacle loss model of this radio medium.
This function may return nullptr if there's no obstacle loss model.
Implements inet::physicallayer::IRadioMedium.
|
inlineoverridevirtual |
Returns the radio signal path loss model of this radio medium.
This function never returns nullptr.
Implements inet::physicallayer::IRadioMedium.
|
inlineoverridevirtual |
Returns the physical environment model of this radio medium.
This function may return nullptr if there's no physical environment model.
Implements inet::physicallayer::IRadioMedium.
|
inlineoverridevirtual |
Returns the radio signal propagation model of this radio medium.
This function never returns nullptr.
Implements inet::physicallayer::IRadioMedium.
|
overridevirtual |
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.
Implements inet::physicallayer::IRadioMedium.
Referenced by computeInterference(), computeInterferingReceptions(), computeReceptionDecision(), computeReceptionResult(), getSNIR(), isReceptionAttempted(), isReceptionPossible(), and isReceptionSuccessful().
|
overridevirtual |
Returns the reception decision for the transmission part that specifies whether the reception is possible, attempted, and successful.
Implements inet::physicallayer::IRadioMedium.
|
overridevirtual |
Returns the reception result for the transmission that describes the end result of the reception process.
Implements inet::physicallayer::IRadioMedium.
Referenced by receivePacket().
|
overridevirtual |
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.
Implements inet::physicallayer::IRadioMedium.
Referenced by computeReceptionDecision(), computeReceptionResult(), and isReceptionSuccessful().
|
overrideprotectedvirtual |
|
overrideprotectedvirtual |
|
protectedvirtual |
Referenced by isPotentialReceiver().
|
protectedvirtual |
Referenced by isInterferingTransmission(), and isPotentialReceiver().
|
protectedvirtual |
Referenced by computeInterferingReceptions().
|
protectedvirtual |
|
protectedvirtual |
Returns true if the radio can potentially receive the transmission successfully.
If this function returns false then the radio medium doesn't send a radio frame to this receiver.
Referenced by receiveSignal(), and sendToRadio().
|
protectedvirtual |
Referenced by isPotentialReceiver().
|
overridevirtual |
Returns true when the reception is attempted of the transmission part.
Implements inet::physicallayer::IRadioMedium.
|
overridevirtual |
Returns true when the reception is possible of the transmission part.
Implements inet::physicallayer::IRadioMedium.
|
overridevirtual |
Returns true when the reception is successful of the transmission part.
Implements inet::physicallayer::IRadioMedium.
|
overridevirtual |
Returns the listening decision that describes what the receiver detects on the radio medium.
Implements inet::physicallayer::IRadioMedium.
|
inlineoverrideprotectedvirtual |
|
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::IPrintableObject.
|
overridevirtual |
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.
Implements inet::physicallayer::IRadioMedium.
|
overridevirtual |
|
protectedvirtual |
Removes all cached data related to past transmissions that don't have any effect on any ongoing transmission.
Note that it's possible that a transmission is in the past but it's still needed to compute the total interference for another.
Referenced by handleMessage().
|
overridevirtual |
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.
Implements inet::physicallayer::IRadioMedium.
|
protectedvirtual |
Sends a copy of the provided radio frame to all affected receivers on the radio medium.
Referenced by transmitPacket().
|
protectedvirtual |
Sends a copy of the provided radio frame to all receivers on the radio medium.
Referenced by sendToAffectedRadios().
|
virtual |
Referenced by sendToAllRadios(), inet::physicallayer::NeighborListNeighborCache::sendToNeighbors(), inet::physicallayer::QuadTreeNeighborCache::QuadTreeNeighborCacheVisitor::visit(), and inet::physicallayer::GridNeighborCache::GridNeighborCacheVisitor::visit().
|
overridevirtual |
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.
Implements inet::physicallayer::IRadioMedium.
|
protected |
The analog model is never nullptr.
Referenced by computeReception(), getNoise(), getSNIR(), initialize(), and printToStream().
|
protected |
The background noise model or nullptr if unused.
Referenced by computeInterference(), initialize(), and printToStream().
|
mutableprotected |
Total number of reception decision cache queries.
Referenced by finish(), and getReceptionDecision().
|
mutableprotected |
Total number of reception decision cache hits.
Referenced by finish(), and getReceptionDecision().
|
mutableprotected |
Total number of interference cache queries.
Referenced by finish(), and getInterference().
|
mutableprotected |
Total number of interference cache hits.
Referenced by finish(), and getInterference().
|
mutableprotected |
Total number of noise cache queries.
Referenced by finish(), and getNoise().
|
mutableprotected |
Total number of noise cache hits.
Referenced by finish(), and getNoise().
|
mutableprotected |
Total number of reception cache queries.
Referenced by finish(), and getReception().
|
mutableprotected |
Total number of reception cache hits.
Referenced by finish(), and getReception().
|
mutableprotected |
Total number of reception result cache queries.
Referenced by finish(), and getReceptionResult().
|
mutableprotected |
Total number of reception result cache hits.
Referenced by finish(), and getReceptionResult().
|
mutableprotected |
|
mutableprotected |
|
mutableprotected |
Caches intermediate results of the ongoing communication for all radios.
Referenced by addRadio(), addTransmission(), computeInterferingReceptions(), getArrival(), getInterference(), getListening(), getNoise(), getReception(), getReceptionDecision(), getReceptionResult(), getSNIR(), initialize(), printToStream(), receivePacket(), receiveSignal(), removeNonInterferingTransmissions(), removeRadio(), sendToRadio(), transmitPacket(), and ~RadioMedium().
|
protected |
The communication log output recorder.
Referenced by initialize(), receivePacket(), transmitPacket(), and ~RadioMedium().
|
mutableprotected |
Total number of interference computations.
Referenced by computeInterference(), and finish().
|
mutableprotected |
Total number of listening decision computations.
Referenced by computeListeningDecision(), and finish().
|
protected |
True means the radio medium doesn't send radio frames to a radio if it listens on the medium in incompatible mode (e.g.
different carrier frequency and/or bandwidth, different modulation, etc.)
Referenced by addRadio(), initialize(), isPotentialReceiver(), and removeRadio().
|
protected |
True means the radio medium doesn't send radio frames to a radio if the mac address of the destination is different.
Referenced by addRadio(), initialize(), isPotentialReceiver(), and removeRadio().
|
protected |
The physical material of the medium is never nullptr.
Referenced by initialize().
|
mutableprotected |
Caches various medium limits among all radios.
Referenced by addRadio(), addTransmission(), initialize(), isInCommunicationRange(), isInInterferenceRange(), isInterferingTransmission(), printToStream(), removeRadio(), and sendToAffectedRadios().
|
mutableprotected |
Caches neighbors for all radios or nullptr if turned off.
Referenced by addRadio(), initialize(), printToStream(), removeRadio(), and sendToAffectedRadios().
|
protected |
The obstacle loss model or nullptr if unused.
Referenced by initialize(), and printToStream().
|
protected |
The path loss model is never nullptr.
Referenced by initialize(), and printToStream().
|
protected |
The physical environment model or nullptr if unused.
Referenced by initialize().
|
protected |
The propagation model is never nullptr.
Referenced by addRadio(), addTransmission(), initialize(), and printToStream().
|
private |
|
mutableprotected |
Total number of radio frame sends.
Referenced by finish(), receiveSignal(), and sendToRadio().
|
protected |
True means the radio medium doesn't send radio frames to a radio if it's neither in receiver nor in transceiver mode.
Referenced by addRadio(), initialize(), isPotentialReceiver(), and removeRadio().
|
protected |
The list of radios that can transmit and receive radio signals on the radio medium.
The radios follow each other in the order of their unique id. Radios are only removed from the beginning. This list may contain nullptr values.
Referenced by addRadio(), addTransmission(), removeRadio(), and sendToAllRadios().
|
protected |
The radio medium doesn't send radio frames to a radio if it's outside the range provided by the selected range filter.
Referenced by initialize(), isPotentialReceiver(), and sendToAffectedRadios().
|
mutableprotected |
Total number of reception computations.
Referenced by computeReception(), and finish().
|
mutableprotected |
Total number of data reception decision computations.
Referenced by computeReceptionDecision(), and finish().
|
mutableprotected |
Total number of data reception result computations.
Referenced by computeReceptionResult().
|
protected |
Records all transmissions and receptions into a separate trace file.
The communication log file can be found at: ${resultdir}/${configname}-${runnumber}.tlog
Referenced by initialize(), receivePacket(), transmitPacket(), and ~RadioMedium().
|
protected |
The message that is used to purge the internal state of the medium.
Referenced by addTransmission(), handleMessage(), initialize(), removeNonInterferingTransmissions(), and ~RadioMedium().
|
mutableprotected |
Total number of transmissions.
Referenced by addTransmission(), and finish().
|
protected |
The list of ongoing transmissions on the radio medium.
The transmissions follow each other in the order of their unique id. Transmissions are only removed from the beginning. This list doesn't contain nullptr values.
Referenced by addRadio(), addTransmission(), getInterference(), getReceptionDecision(), getReceptionResult(), isReceptionAttempted(), isReceptionPossible(), isReceptionSuccessful(), listenOnMedium(), receiveSignal(), removeNonInterferingTransmissions(), and ~RadioMedium().