A Discrete-Event Network Simulator
API
ns3::SpectrumWifiPhyHelper Class Reference

Make it easy to create and manage PHY objects for the spectrum model. More...

#include "spectrum-wifi-helper.h"

+ Inheritance diagram for ns3::SpectrumWifiPhyHelper:
+ Collaboration diagram for ns3::SpectrumWifiPhyHelper:

Public Member Functions

 SpectrumWifiPhyHelper ()
 Create a phy helper without any parameter set. More...
 
void SetChannel (Ptr< SpectrumChannel > channel)
 
void SetChannel (std::string channelName)
 
- Public Member Functions inherited from ns3::WifiPhyHelper
 WifiPhyHelper ()
 
virtual ~WifiPhyHelper ()
 
void DisablePreambleDetectionModel ()
 Disable the preamble detection model. More...
 
PcapHelper::DataLinkType GetPcapDataLinkType (void) const
 Get the data link type of PCAP traces to be used. More...
 
void Set (std::string name, const AttributeValue &v)
 
void SetErrorRateModel (std::string name, std::string n0="", const AttributeValue &v0=EmptyAttributeValue(), std::string n1="", const AttributeValue &v1=EmptyAttributeValue(), std::string n2="", const AttributeValue &v2=EmptyAttributeValue(), std::string n3="", const AttributeValue &v3=EmptyAttributeValue(), std::string n4="", const AttributeValue &v4=EmptyAttributeValue(), std::string n5="", const AttributeValue &v5=EmptyAttributeValue(), std::string n6="", const AttributeValue &v6=EmptyAttributeValue(), std::string n7="", const AttributeValue &v7=EmptyAttributeValue())
 
void SetFrameCaptureModel (std::string name, std::string n0="", const AttributeValue &v0=EmptyAttributeValue(), std::string n1="", const AttributeValue &v1=EmptyAttributeValue(), std::string n2="", const AttributeValue &v2=EmptyAttributeValue(), std::string n3="", const AttributeValue &v3=EmptyAttributeValue(), std::string n4="", const AttributeValue &v4=EmptyAttributeValue(), std::string n5="", const AttributeValue &v5=EmptyAttributeValue(), std::string n6="", const AttributeValue &v6=EmptyAttributeValue(), std::string n7="", const AttributeValue &v7=EmptyAttributeValue())
 
void SetPcapDataLinkType (SupportedPcapDataLinkTypes dlt)
 Set the data link type of PCAP traces to be used. More...
 
void SetPreambleDetectionModel (std::string name, std::string n0="", const AttributeValue &v0=EmptyAttributeValue(), std::string n1="", const AttributeValue &v1=EmptyAttributeValue(), std::string n2="", const AttributeValue &v2=EmptyAttributeValue(), std::string n3="", const AttributeValue &v3=EmptyAttributeValue(), std::string n4="", const AttributeValue &v4=EmptyAttributeValue(), std::string n5="", const AttributeValue &v5=EmptyAttributeValue(), std::string n6="", const AttributeValue &v6=EmptyAttributeValue(), std::string n7="", const AttributeValue &v7=EmptyAttributeValue())
 
- Public Member Functions inherited from ns3::PcapHelperForDevice
 PcapHelperForDevice ()
 Construct a PcapHelperForDevice. More...
 
virtual ~PcapHelperForDevice ()
 Destroy a PcapHelperForDevice. More...
 
void EnablePcap (std::string prefix, Ptr< NetDevice > nd, bool promiscuous=false, bool explicitFilename=false)
 Enable pcap output the indicated net device. More...
 
void EnablePcap (std::string prefix, std::string ndName, bool promiscuous=false, bool explicitFilename=false)
 Enable pcap output the indicated net device using a device previously named using the ns-3 object name service. More...
 
void EnablePcap (std::string prefix, NetDeviceContainer d, bool promiscuous=false)
 Enable pcap output on each device in the container which is of the appropriate type. More...
 
void EnablePcap (std::string prefix, NodeContainer n, bool promiscuous=false)
 Enable pcap output on each device (which is of the appropriate type) in the nodes provided in the container. More...
 
void EnablePcap (std::string prefix, uint32_t nodeid, uint32_t deviceid, bool promiscuous=false)
 Enable pcap output on the device specified by a global node-id (of a previously created node) and associated device-id. More...
 
void EnablePcapAll (std::string prefix, bool promiscuous=false)
 Enable pcap output on each device (which is of the appropriate type) in the set of all nodes created in the simulation. More...
 
- Public Member Functions inherited from ns3::AsciiTraceHelperForDevice
 AsciiTraceHelperForDevice ()
 Construct an AsciiTraceHelperForDevice. More...
 
virtual ~AsciiTraceHelperForDevice ()
 Destroy an AsciiTraceHelperForDevice. More...
 
void EnableAscii (std::string prefix, Ptr< NetDevice > nd, bool explicitFilename=false)
 Enable ascii trace output on the indicated net device. More...
 
void EnableAscii (Ptr< OutputStreamWrapper > stream, Ptr< NetDevice > nd)
 Enable ascii trace output on the indicated net device. More...
 
void EnableAscii (std::string prefix, std::string ndName, bool explicitFilename=false)
 Enable ascii trace output the indicated net device using a device previously named using the ns-3 object name service. More...
 
void EnableAscii (Ptr< OutputStreamWrapper > stream, std::string ndName)
 Enable ascii trace output the indicated net device using a device previously named using the ns-3 object name service. More...
 
void EnableAscii (std::string prefix, NetDeviceContainer d)
 Enable ascii trace output on each device in the container which is of the appropriate type. More...
 
void EnableAscii (Ptr< OutputStreamWrapper > stream, NetDeviceContainer d)
 Enable ascii trace output on each device in the container which is of the appropriate type. More...
 
void EnableAscii (std::string prefix, NodeContainer n)
 Enable ascii trace output on each device (which is of the appropriate type) in the nodes provided in the container. More...
 
void EnableAscii (Ptr< OutputStreamWrapper > stream, NodeContainer n)
 Enable ascii trace output on each device (which is of the appropriate type) in the nodes provided in the container. More...
 
void EnableAscii (std::string prefix, uint32_t nodeid, uint32_t deviceid, bool explicitFilename)
 Enable ascii trace output on the device specified by a global node-id (of a previously created node) and associated device-id. More...
 
void EnableAscii (Ptr< OutputStreamWrapper > stream, uint32_t nodeid, uint32_t deviceid)
 Enable ascii trace output on the device specified by a global node-id (of a previously created node) and associated device-id. More...
 
void EnableAsciiAll (std::string prefix)
 Enable ascii trace output on each device (which is of the appropriate type) in the set of all nodes created in the simulation. More...
 
void EnableAsciiAll (Ptr< OutputStreamWrapper > stream)
 Enable ascii trace output on each device (which is of the appropriate type) in the set of all nodes created in the simulation. More...
 

Static Public Member Functions

static SpectrumWifiPhyHelper Default (void)
 Create a phy helper in a default working state. More...
 

Private Member Functions

virtual Ptr< WifiPhyCreate (Ptr< Node > node, Ptr< NetDevice > device) const
 

Private Attributes

Ptr< SpectrumChannelm_channel
 the channel More...
 

Additional Inherited Members

- Public Types inherited from ns3::WifiPhyHelper
enum  SupportedPcapDataLinkTypes { DLT_IEEE802_11 = PcapHelper::DLT_IEEE802_11, DLT_PRISM_HEADER = PcapHelper::DLT_PRISM_HEADER, DLT_IEEE802_11_RADIO = PcapHelper::DLT_IEEE802_11_RADIO }
 An enumeration of the pcap data link types (DLTs) which this helper supports. More...
 
- Static Protected Member Functions inherited from ns3::WifiPhyHelper
static void PcapSniffRxEvent (Ptr< PcapFileWrapper > file, Ptr< const Packet > packet, uint16_t channelFreqMhz, WifiTxVector txVector, MpduInfo aMpdu, SignalNoiseDbm signalNoise)
 
static void PcapSniffTxEvent (Ptr< PcapFileWrapper > file, Ptr< const Packet > packet, uint16_t channelFreqMhz, WifiTxVector txVector, MpduInfo aMpdu)
 
- Protected Attributes inherited from ns3::WifiPhyHelper
ObjectFactory m_errorRateModel
 error rate model More...
 
ObjectFactory m_frameCaptureModel
 frame capture model More...
 
ObjectFactory m_phy
 PHY object. More...
 
ObjectFactory m_preambleDetectionModel
 preamble detection model More...
 

Detailed Description

Make it easy to create and manage PHY objects for the spectrum model.

The Pcap and ascii traces generated by the EnableAscii and EnablePcap methods defined in this class correspond to PHY-level traces and come to us via WifiPhyHelper

Definition at line 37 of file spectrum-wifi-helper.h.

Constructor & Destructor Documentation

◆ SpectrumWifiPhyHelper()

ns3::SpectrumWifiPhyHelper::SpectrumWifiPhyHelper ( )

Create a phy helper without any parameter set.

The user must set them all to be able to call Install later.

Definition at line 35 of file spectrum-wifi-helper.cc.

References ns3::WifiPhyHelper::m_phy, and ns3::ObjectFactory::SetTypeId().

+ Here is the call graph for this function:

Member Function Documentation

◆ Create()

Ptr< WifiPhy > ns3::SpectrumWifiPhyHelper::Create ( Ptr< Node node,
Ptr< NetDevice device 
) const
privatevirtual
Parameters
nodethe node on which we wish to create a wifi PHY
devicethe device within which this PHY will be created
Returns
a newly-created PHY object.

This method implements the pure virtual method defined in ns3::WifiPhyHelper.

Implements ns3::WifiPhyHelper.

Definition at line 63 of file spectrum-wifi-helper.cc.

References ns3::ObjectFactory::Create(), ns3::Object::GetObject(), ns3::ObjectFactory::IsTypeIdSet(), m_channel, ns3::WifiPhyHelper::m_errorRateModel, ns3::WifiPhyHelper::m_frameCaptureModel, ns3::WifiPhyHelper::m_phy, ns3::WifiPhyHelper::m_preambleDetectionModel, and third::phy.

+ Here is the call graph for this function:

◆ Default()

SpectrumWifiPhyHelper ns3::SpectrumWifiPhyHelper::Default ( void  )
static

Create a phy helper in a default working state.

Returns
a default SpectrumWifPhyHelper

Definition at line 42 of file spectrum-wifi-helper.cc.

References ns3::WifiPhyHelper::SetErrorRateModel().

+ Here is the call graph for this function:

◆ SetChannel() [1/2]

void ns3::SpectrumWifiPhyHelper::SetChannel ( Ptr< SpectrumChannel channel)
Parameters
channelthe channel to associate to this helper

Every PHY created by a call to Install is associated to this channel.

Definition at line 50 of file spectrum-wifi-helper.cc.

References third::channel, and m_channel.

Referenced by Bug2843TestCase::DoRun().

+ Here is the caller graph for this function:

◆ SetChannel() [2/2]

void ns3::SpectrumWifiPhyHelper::SetChannel ( std::string  channelName)
Parameters
channelNameThe name of the channel to associate to this helper

Every PHY created by a call to Install is associated to this channel.

Definition at line 56 of file spectrum-wifi-helper.cc.

References third::channel, and m_channel.

Member Data Documentation

◆ m_channel

Ptr<SpectrumChannel> ns3::SpectrumWifiPhyHelper::m_channel
private

the channel

Definition at line 75 of file spectrum-wifi-helper.h.

Referenced by Create(), and SetChannel().


The documentation for this class was generated from the following files: