22 #include <ns3/object.h>
23 #include <ns3/net-device.h>
24 #include <ns3/mobility-model.h>
25 #include <ns3/wifi-phy.h>
26 #include <ns3/spectrum-phy.h>
27 #include <ns3/spectrum-signal-parameters.h>
29 #include <ns3/spectrum-value.h>
30 #include <ns3/antenna-model.h>
44 static TypeId tid =
TypeId (
"ns3::WifiSpectrumPhyInterface")
46 .SetGroupName (
"Wifi");
#define NS_LOG_FUNCTION(parameters)
If log level LOG_FUNCTION is enabled, this macro will output all input parameters separated by "...
Abstract base class for Spectrum-aware PHY layers.
virtual Ptr< NetDevice > GetDevice() const
Get the associated NetDevice instance.
#define NS_OBJECT_ENSURE_REGISTERED(type)
Register an Object subclass with the TypeId system.
void StartRx(Ptr< SpectrumSignalParameters > rxParams)
Input method for delivering a signal from the spectrum channel and low-level Phy interface to this Sp...
Ptr< SpectrumChannel > m_channel
#define NS_LOG_COMPONENT_DEFINE(name)
Define a Log component with a specific name.
static TypeId GetTypeId(void)
virtual void StartRx(Ptr< SpectrumSignalParameters > params)
Notify the SpectrumPhy instance of an incoming signal.
Ptr< const SpectrumModel > GetRxSpectrumModel() const
WifiSpectrumPhyInterface()
Ptr< NetDevice > m_netDevice
virtual Ptr< MobilityModel > GetMobility()
Get the associated MobilityModel instance.
virtual void DoDispose(void)
Destructor implementation.
Ptr< AntennaModel > GetRxAntenna(void) const
Get the antenna model used for reception.
virtual void SetDevice(Ptr< NetDevice > d)
Set the associated NetDevice instance.
Every class exported by the ns3 library is enclosed in the ns3 namespace.
void SetMobility(Ptr< MobilityModel > mobility)
assign a mobility model to this device
Ptr< MobilityModel > GetMobility(void)
Return the mobility model this PHY is associated with.
void SetSpectrumWifiPhy(Ptr< SpectrumWifiPhy > phy)
Connect SpectrumWifiPhy object.
virtual Ptr< AntennaModel > GetRxAntenna()
Get the AntennaModel used by the NetDevice for reception.
virtual void SetMobility(Ptr< MobilityModel > m)
Set the mobility model associated with this device.
virtual void SetChannel(Ptr< SpectrumChannel > c)
Set the channel attached to this device.
virtual Ptr< const SpectrumModel > GetRxSpectrumModel() const
Ptr< SpectrumWifiPhy > m_spectrumWifiPhy
a unique identifier for an interface.
TypeId SetParent(TypeId tid)
Set the parent TypeId.