This struct provides the generic signal representation to be used by all wireless technologies. More...
#include "spectrum-signal-parameters.h"
Public Member Functions | |
SpectrumSignalParameters () | |
default constructor | |
SpectrumSignalParameters (const SpectrumSignalParameters &p) | |
copy constructor | |
virtual | ~SpectrumSignalParameters () |
destructor | |
virtual Ptr< SpectrumSignalParameters > | Copy () const |
make a "virtual" copy of this class, where "virtual" refers to the fact that if the actual object is a derived class of SpectrumSignalParameters, then the copy is also a derived class of the same type. | |
![]() | |
SimpleRefCount () | |
Default constructor. | |
SimpleRefCount (const SimpleRefCount &o) | |
Copy constructor. | |
uint32_t | GetReferenceCount () const |
Get the reference count of the object. | |
SimpleRefCount & | operator= (const SimpleRefCount &o) |
Assignment operator. | |
void | Ref () const |
Increment the reference count. | |
void | Unref () const |
Decrement the reference count. | |
Public Attributes | |
Time | duration |
The duration of the packet transmission. | |
Ptr< const ComplexMatrixArray > | precodingMatrix |
The 3D precoding matrix where the dimensions are: the number of TX ports, the number of TX streams, the number of RBs. | |
Ptr< SpectrumValue > | psd |
The Power Spectral Density of the waveform, in linear units. | |
Ptr< const ComplexMatrixArray > | spectrumChannelMatrix |
The 3D channel matrix where the dimensions are: the number of RX ports, the number of TX Ports, the number of resource blocks (RBs). | |
Ptr< AntennaModel > | txAntenna |
The AntennaModel instance that was used to transmit this signal. | |
Ptr< MobilityModel > | txMobility |
The transmitter mobility model This should be used at StartRx instead of retrieving the mobility model directly from the PHY. | |
Ptr< SpectrumPhy > | txPhy |
The SpectrumPhy instance that is making the transmission. | |
This struct provides the generic signal representation to be used by all wireless technologies.
Any specific wireless technology is allowed to define additional signal parameters by inheriting from this struct and providing additional member variables. This makes sure that a minimum set of parameters (in particular, the ones needed for interference calculation) is common across all wireless technologies, while at the same time allowing each technology to have its own specific signal parameters.
Furthermore, since the signal parameters specific of every technology inherit directly from this struct, each PHY can test (by using a dynamic cast) if a signal being received belongs to a given technology or not.
Definition at line 42 of file spectrum-signal-parameters.h.
ns3::SpectrumSignalParameters::SpectrumSignalParameters | ( | ) |
default constructor
Definition at line 23 of file spectrum-signal-parameters.cc.
References NS_LOG_FUNCTION.
Referenced by ns3::HalfDuplexIdealPhySignalParameters::HalfDuplexIdealPhySignalParameters(), ns3::lrwpan::LrWpanSpectrumSignalParameters::LrWpanSpectrumSignalParameters(), ns3::LteSpectrumSignalParameters::LteSpectrumSignalParameters(), ns3::LteSpectrumSignalParametersDataFrame::LteSpectrumSignalParametersDataFrame(), ns3::LteSpectrumSignalParametersDlCtrlFrame::LteSpectrumSignalParametersDlCtrlFrame(), ns3::LteSpectrumSignalParametersUlSrsFrame::LteSpectrumSignalParametersUlSrsFrame(), SpectrumSignalParameters(), ns3::WifiSpectrumSignalParameters::WifiSpectrumSignalParameters(), and ns3::WifiSpectrumSignalParameters::WifiSpectrumSignalParameters().
|
virtual |
ns3::SpectrumSignalParameters::SpectrumSignalParameters | ( | const SpectrumSignalParameters & | p | ) |
copy constructor
p | object to copy |
Definition at line 33 of file spectrum-signal-parameters.cc.
References SpectrumSignalParameters(), duration, NS_LOG_FUNCTION, precodingMatrix, psd, spectrumChannelMatrix, txAntenna, and txPhy.
|
virtual |
make a "virtual" copy of this class, where "virtual" refers to the fact that if the actual object is a derived class of SpectrumSignalParameters, then the copy is also a derived class of the same type.
Each class inheriting from SpectrumSignalParameters should override this method and use it to call the copy constructor of the derived class.
Reimplemented in ns3::HalfDuplexIdealPhySignalParameters, ns3::lrwpan::LrWpanSpectrumSignalParameters, ns3::LteSpectrumSignalParameters, ns3::LteSpectrumSignalParametersDataFrame, ns3::LteSpectrumSignalParametersDlCtrlFrame, ns3::LteSpectrumSignalParametersUlSrsFrame, and ns3::WifiSpectrumSignalParameters.
Definition at line 47 of file spectrum-signal-parameters.cc.
References ns3::Create(), and NS_LOG_FUNCTION.
Time ns3::SpectrumSignalParameters::duration |
The duration of the packet transmission.
It is assumed that the Power Spectral Density remains constant for the whole duration of the transmission. In other words, all waveform have a rect shape with respect to time.
Definition at line 92 of file spectrum-signal-parameters.h.
Referenced by SpectrumSignalParameters().
Ptr<const ComplexMatrixArray> ns3::SpectrumSignalParameters::precodingMatrix |
The 3D precoding matrix where the dimensions are: the number of TX ports, the number of TX streams, the number of RBs.
Definition at line 116 of file spectrum-signal-parameters.h.
Referenced by SpectrumSignalParameters().
Ptr<SpectrumValue> ns3::SpectrumSignalParameters::psd |
The Power Spectral Density of the waveform, in linear units.
The exact unit will depend on the type of transmission medium involved: W for radio communications, Pa for underwater acoustic communications. Other transmission media to be defined.
Definition at line 84 of file spectrum-signal-parameters.h.
Referenced by SpectrumSignalParameters().
Ptr<const ComplexMatrixArray> ns3::SpectrumSignalParameters::spectrumChannelMatrix |
The 3D channel matrix where the dimensions are: the number of RX ports, the number of TX Ports, the number of resource blocks (RBs).
Needed in the MIMO system in which multiple TX and RX ports can exist, hence the PSD is multidimensional. Elements are the complex numbers.
Definition at line 110 of file spectrum-signal-parameters.h.
Referenced by SpectrumSignalParameters().
Ptr<AntennaModel> ns3::SpectrumSignalParameters::txAntenna |
The AntennaModel instance that was used to transmit this signal.
Definition at line 102 of file spectrum-signal-parameters.h.
Referenced by SpectrumSignalParameters().
Ptr<MobilityModel> ns3::SpectrumSignalParameters::txMobility |
The transmitter mobility model This should be used at StartRx instead of retrieving the mobility model directly from the PHY.
This allows wraparound models to replace the real mobility model with a virtual one.
Definition at line 123 of file spectrum-signal-parameters.h.
Ptr<SpectrumPhy> ns3::SpectrumSignalParameters::txPhy |
The SpectrumPhy instance that is making the transmission.
Definition at line 97 of file spectrum-signal-parameters.h.
Referenced by SpectrumSignalParameters().