24 #include <ns3/object-factory.h>
26 #include <ns3/double.h>
27 #include <ns3/simulator.h>
28 #include <ns3/trace-source-accessor.h>
29 #include <ns3/lte-spectrum-signal-parameters.h>
30 #include <ns3/antenna-model.h>
43 m_referenceSignalPower (0),
70 .AddConstructor<RemSpectrumPhy> ()
130 if (lteDlCtrlRxParams!=0)
132 double power =
Integral (*(params->psd));
Ptr< MobilityModel > GetMobility()
get the associated MobilityModel instance
double GetSinr(double noisePower)
smart pointer class similar to boost::intrusive_ptr
#define NS_LOG_FUNCTION(parameters)
Abstract base class for Spectrum-aware PHY layers.
double Integral(const SpectrumValue &arg)
void SetRxSpectrumModel(Ptr< const SpectrumModel > m)
set the RX spectrum model to be used
NS_OBJECT_ENSURE_REGISTERED(NullMessageSimulatorImpl)
double m_referenceSignalPower
virtual void DoDispose(void)
This method is called by Object::Dispose or by the object's destructor, whichever comes first...
Ptr< AntennaModel > GetRxAntenna()
get the AntennaModel used by the NetDevice for reception
virtual ~RemSpectrumPhy()
Ptr< NetDevice > GetDevice()
get the associated NetDevice instance
void Reset()
Reset the SINR calculator.
void Deactivate()
make StartRx a no-op from now on, and mark instance as inactive
void StartRx(Ptr< SpectrumSignalParameters > params)
Notify the SpectrumPhy instance of an incoming signal.
Ptr< const SpectrumModel > m_rxSpectrumModel
Ptr< MobilityModel > m_mobility
void SetChannel(Ptr< SpectrumChannel > c)
Set the channel attached to this device.
void SetMobility(Ptr< MobilityModel > m)
Set the mobility model associated with this device.
void DoDispose()
This method is called by Object::Dispose or by the object's destructor, whichever comes first...
static TypeId GetTypeId(void)
NS_LOG_COMPONENT_DEFINE("RemSpectrumPhy")
a unique identifier for an interface.
TypeId SetParent(TypeId tid)
Ptr< const SpectrumModel > GetRxSpectrumModel() const
void SetDevice(Ptr< NetDevice > d)
set the associated NetDevice instance