21 #ifndef SPECTRUM_ANALYZER_H
22 #define SPECTRUM_ANALYZER_H
25 #include <ns3/spectrum-value.h>
26 #include <ns3/mobility-model.h>
27 #include <ns3/packet.h>
28 #include <ns3/nstime.h>
29 #include <ns3/net-device.h>
30 #include <ns3/spectrum-phy.h>
31 #include <ns3/spectrum-channel.h>
86 virtual void Start ();
keep track of time values and allow control of global simulation resolution
smart pointer class similar to boost::intrusive_ptr
Abstract base class for Spectrum-aware PHY layers.
Ptr< NetDevice > m_netDevice
void StartRx(Ptr< SpectrumSignalParameters > params)
Notify the SpectrumPhy instance of an incoming signal.
double m_noisePowerSpectralDensity
Ptr< NetDevice > GetDevice()
get the associated NetDevice instance
forward calls to a chain of CallbackAn ns3::TracedCallback has almost exactly the same API as a norma...
Ptr< AntennaModel > m_antenna
virtual void Start()
Start the spectrum analyzer.
void SetChannel(Ptr< SpectrumChannel > c)
Set the channel attached to this device.
Ptr< SpectrumChannel > m_channel
virtual ~SpectrumAnalyzer()
static TypeId GetTypeId(void)
virtual void Stop()
Stop the spectrum analyzer.
void SetRxSpectrumModel(Ptr< SpectrumModel > m)
Set the spectrum model used by the SpectrumAnalyzer to represent incoming signals.
void DoDispose()
This method is called by Object::Dispose or by the object's destructor, whichever comes first...
void SetDevice(Ptr< NetDevice > d)
set the associated NetDevice instance
Simple SpectrumPhy implemetation that averages the spectrum power density of incoming transmissions t...
void AddSignal(Ptr< const SpectrumValue > psd)
TracedCallback< Ptr< const SpectrumValue > > m_averagePowerSpectralDensityReportTrace
Ptr< SpectrumValue > m_sumPowerSpectralDensity
Ptr< SpectrumModel > m_spectrumModel
Ptr< MobilityModel > GetMobility()
get the associated MobilityModel instance
virtual void GenerateReport()
void SetMobility(Ptr< MobilityModel > m)
Set the mobility model associated with this device.
Ptr< const SpectrumModel > GetRxSpectrumModel() const
Ptr< AntennaModel > GetRxAntenna()
get the AntennaModel used by the NetDevice for reception
void SubtractSignal(Ptr< const SpectrumValue > psd)
a unique identifier for an interface.
Ptr< MobilityModel > m_mobility
Ptr< SpectrumValue > m_energySpectralDensity
void SetAntenna(Ptr< AntennaModel > a)
set the AntennaModel to be used
void UpdateEnergyReceivedSoFar()