23 #include "ns3/lte-net-device.h"
24 #include "ns3/lte-phy-tag.h"
25 #include "ns3/lte-spectrum-signal-parameters.h"
26 #include <ns3/antenna-model.h>
27 #include <ns3/boolean.h>
28 #include <ns3/double.h>
30 #include <ns3/simulator.h>
65 TypeId(
"ns3::LteSimpleSpectrumPhy")
67 .AddTraceSource(
"RxStart",
68 "Data reception start",
70 "ns3::SpectrumValue::TracedCallback");
133 DynamicCast<LteSpectrumSignalParametersDataFrame>(spectrumRxParams);
138 if (
m_cellId == lteDataRxParams->cellId)
~LteSimpleSpectrumPhy() override
void SetMobility(Ptr< MobilityModel > m) override
Set the mobility model associated with this device.
Ptr< NetDevice > GetDevice() const override
Get the associated NetDevice instance.
Ptr< SpectrumChannel > m_channel
the channel
void SetRxSpectrumModel(Ptr< const SpectrumModel > model)
Set receive spectrum model.
void DoDispose() override
Destructor implementation.
Ptr< MobilityModel > GetMobility() const override
Get the associated MobilityModel instance.
Ptr< const SpectrumModel > GetRxSpectrumModel() const override
Ptr< AntennaModel > m_antenna
the antenna model
void SetDevice(Ptr< NetDevice > d) override
Set the associated NetDevice instance.
void StartRx(Ptr< SpectrumSignalParameters > params) override
Notify the SpectrumPhy instance of an incoming signal.
Ptr< Object > GetAntenna() const override
Get the AntennaModel used by this SpectrumPhy instance for transmission and/or reception.
Ptr< NetDevice > m_device
the device
Ptr< const SpectrumModel > m_rxSpectrumModel
the spectrum model
TracedCallback< Ptr< const SpectrumValue > > m_rxStart
receive start trace callback function
static TypeId GetTypeId()
Get the type ID.
Ptr< MobilityModel > m_mobility
the mobility model
void SetCellId(uint16_t cellId)
Set cell ID.
void SetChannel(Ptr< SpectrumChannel > c) override
Set the channel attached to this device.
uint16_t m_cellId
the cell ID
virtual void DoDispose()
Destructor implementation.
Smart pointer class similar to boost::intrusive_ptr.
Abstract base class for Spectrum-aware PHY layers.
Simulation virtual time values and global simulation resolution.
a unique identifier for an interface.
TypeId SetParent(TypeId tid)
Set the parent TypeId.
#define NS_LOG_COMPONENT_DEFINE(name)
Define a Log component with a specific name.
#define NS_LOG_DEBUG(msg)
Use NS_LOG to output a message of level LOG_DEBUG.
#define NS_LOG_FUNCTION(parameters)
If log level LOG_FUNCTION is enabled, this macro will output all input parameters separated by ",...
#define NS_OBJECT_ENSURE_REGISTERED(type)
Register an Object subclass with the TypeId system.
Ptr< const TraceSourceAccessor > MakeTraceSourceAccessor(T a)
Create a TraceSourceAccessor which will control access to the underlying trace source.
Every class exported by the ns3 library is enclosed in the ns3 namespace.
Time duration
The duration of the packet transmission.
Ptr< SpectrumValue > psd
The Power Spectral Density of the waveform, in linear units.