21 #ifndef TV_SPECTRUM_TRANSMITTER_H
22 #define TV_SPECTRUM_TRANSMITTER_H
24 #include <ns3/spectrum-value.h>
25 #include <ns3/spectrum-phy.h>
26 #include <ns3/spectrum-channel.h>
27 #include <ns3/antenna-model.h>
28 #include <ns3/spectrum-signal-parameters.h>
29 #include <ns3/mobility-model.h>
30 #include <ns3/net-device.h>
122 virtual void Start ();
127 virtual void Stop ();
void SetChannel(Ptr< SpectrumChannel > c)
Set the channel attached to this device.
Ptr< SpectrumChannel > m_channel
Pointer to spectrum channel object.
Simulation virtual time values and global simulation resolution.
Ptr< NetDevice > GetDevice() const
Get the associated NetDevice instance.
Smart pointer class similar to boost::intrusive_ptr.
Ptr< const SpectrumModel > GetRxSpectrumModel() const
Abstract base class for Spectrum-aware PHY layers.
Ptr< AntennaModel > m_antenna
Pointer to antenna model object.
virtual void CreateTvPsd()
Creates power spectral density (PSD) spectrum of the TV transmitter and sets it for transmission...
Ptr< NetDevice > m_netDevice
Pointer to net device object.
void StartRx(Ptr< SpectrumSignalParameters > params)
Notify the SpectrumPhy instance of an incoming signal.
virtual void Stop()
Stops the TV Transmitter's transmission on the spectrum channel.
Ptr< AntennaModel > GetRxAntenna()
Get the AntennaModel used by the NetDevice for reception.
enum TvType m_tvType
Type of TV transmitter.
bool m_active
True if TV transmitter is transmitting.
Ptr< SpectrumValue > GetTxPsd() const
Get the power spectral density of the TV transmitter's signal.
Ptr< SpectrumValue > m_txPsd
Pointer to power spectral density of TV transmitter's signal.
double m_startFrequency
Start frequency (in Hz) of TV transmitter's signal.
virtual void Start()
Starts the TV Transmitter's transmission on the spectrum channel.
Ptr< MobilityModel > GetMobility()
Get the associated MobilityModel instance.
virtual ~TvSpectrumTransmitter()
double m_channelBandwidth
Bandwidth (in Hz) of TV transmitter's signal.
Time m_transmitDuration
Length of time that TV transmitter will transmit for.
Time m_startingTime
Timepoint after simulation begins that TV transmitter will begin transmitting.
Ptr< SpectrumChannel > GetChannel() const
Get the spectrum channel.
virtual void SetupTx()
Sets up signal to be transmitted.
SpectrumPhy implementation that creates a customizable TV transmitter which transmits a PSD spectrum ...
Ptr< MobilityModel > m_mobility
Pointer to mobility model object.
double m_basePsd
Base power spectral density value (in dBm/Hz) of TV transmitter's signal.
static TypeId GetTypeId(void)
Register this type.
void SetMobility(Ptr< MobilityModel > m)
Set the mobility model associated with this device.
void SetDevice(Ptr< NetDevice > d)
Set the associated NetDevice instance.
a unique identifier for an interface.
TvType
types of TV transmitters: analog, digital 8-VSB, or digital COFDM