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

Class to allow the Spectrum Analysis. More...

#include "spectrum-analyzer-helper.h"

+ Collaboration diagram for ns3::SpectrumAnalyzerHelper:

Public Member Functions

 SpectrumAnalyzerHelper ()
 
 ~SpectrumAnalyzerHelper ()
 
void EnableAsciiAll (std::string prefix)
 Enable ASCII output. More...
 
NetDeviceContainer Install (NodeContainer c) const
 
NetDeviceContainer Install (Ptr< Node > node) const
 
NetDeviceContainer Install (std::string nodeName) const
 
void SetAntenna (std::string type, 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 SetChannel (Ptr< SpectrumChannel > channel)
 Set the SpectrumChannel that will be used by SpectrumPhy instances created by this helper. More...
 
void SetChannel (std::string channelName)
 Set the SpectrumChannel that will be used by SpectrumPhy instances created by this helper. More...
 
void SetDeviceAttribute (std::string n1, const AttributeValue &v1)
 
void SetPhyAttribute (std::string name, const AttributeValue &v)
 
void SetRxSpectrumModel (Ptr< SpectrumModel > m)
 Set the spectrum model used by the created SpectrumAnalyzer instances to represent incoming signals. More...
 

Private Attributes

ObjectFactory m_antenna
 Object factory for the Antenna objects. More...
 
Ptr< SpectrumChannelm_channel
 Channel. More...
 
ObjectFactory m_device
 Object factory for the NetDevice objects. More...
 
ObjectFactory m_phy
 Object factory for the phy objects. More...
 
std::string m_prefix
 Prefix for the output files. More...
 
Ptr< SpectrumModelm_rxSpectrumModel
 Spectrum model. More...
 

Detailed Description

Class to allow the Spectrum Analysis.

Definition at line 44 of file spectrum-analyzer-helper.h.

Constructor & Destructor Documentation

◆ SpectrumAnalyzerHelper()

ns3::SpectrumAnalyzerHelper::SpectrumAnalyzerHelper ( )

Definition at line 74 of file spectrum-analyzer-helper.cc.

References m_antenna, m_device, m_phy, NS_LOG_FUNCTION, and ns3::ObjectFactory::SetTypeId().

+ Here is the call graph for this function:

◆ ~SpectrumAnalyzerHelper()

ns3::SpectrumAnalyzerHelper::~SpectrumAnalyzerHelper ( )

Definition at line 82 of file spectrum-analyzer-helper.cc.

References NS_LOG_FUNCTION.

Member Function Documentation

◆ EnableAsciiAll()

void ns3::SpectrumAnalyzerHelper::EnableAsciiAll ( std::string  prefix)

Enable ASCII output.

This will create one filename for every created SpectrumAnalyzer instance.

Parameters
prefixthe prefix of the filename of the traces that will be created.

Definition at line 151 of file spectrum-analyzer-helper.cc.

References m_prefix, and NS_LOG_FUNCTION.

◆ Install() [1/3]

NetDeviceContainer ns3::SpectrumAnalyzerHelper::Install ( NodeContainer  c) const
Parameters
cthe set of nodes on which a device must be created
Returns
a device container which contains all the devices created by this method.

Definition at line 160 of file spectrum-analyzer-helper.cc.

References ns3::Node::AddDevice(), ns3::NodeContainer::Begin(), ns3::Config::ConnectWithoutContext(), ns3::ObjectFactory::Create(), ns3::AsciiTraceHelper::CreateFileStream(), first::devices, ns3::NodeContainer::End(), ns3::AsciiTraceHelper::GetFilenameFromDevice(), ns3::Node::GetId(), ns3::Object::GetObject(), m_antenna, m_channel, m_device, m_phy, m_prefix, m_rxSpectrumModel, ns3::MakeBoundCallback(), NS_ASSERT, NS_ASSERT_MSG, NS_LOG_FUNCTION, NS_LOG_LOGIC, third::phy, and ns3::WriteAveragePowerSpectralDensityReport().

Referenced by Install().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ Install() [2/3]

NetDeviceContainer ns3::SpectrumAnalyzerHelper::Install ( Ptr< Node node) const
Parameters
nodethe node on which a device must be created
Returns
a device container which contains all the devices created by this method.

Definition at line 220 of file spectrum-analyzer-helper.cc.

References Install(), and NS_LOG_FUNCTION.

+ Here is the call graph for this function:

◆ Install() [3/3]

NetDeviceContainer ns3::SpectrumAnalyzerHelper::Install ( std::string  nodeName) const
Parameters
nodeNamethe name of node on which a device must be created
Returns
a device container which contains all the devices created by this method.

Definition at line 227 of file spectrum-analyzer-helper.cc.

References Install(), and NS_LOG_FUNCTION.

+ Here is the call graph for this function:

◆ SetAntenna()

void ns3::SpectrumAnalyzerHelper::SetAntenna ( std::string  type,
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 () 
)
Parameters
typethe type of the model to set
n0the name of the attribute to set
v0the value of the attribute to set
n1the name of the attribute to set
v1the value of the attribute to set
n2the name of the attribute to set
v2the value of the attribute to set
n3the name of the attribute to set
v3the value of the attribute to set
n4the name of the attribute to set
v4the value of the attribute to set
n5the name of the attribute to set
v5the value of the attribute to set
n6the name of the attribute to set
v6the value of the attribute to set
n7the name of the attribute to set
v7the value of the attribute to set

Configure the AntennaModel instance for each new device to be created

Definition at line 119 of file spectrum-analyzer-helper.cc.

References m_antenna, ns3::ObjectFactory::Set(), and ns3::ObjectFactory::SetTypeId().

+ Here is the call graph for this function:

◆ SetChannel() [1/2]

void ns3::SpectrumAnalyzerHelper::SetChannel ( Ptr< SpectrumChannel channel)

Set the SpectrumChannel that will be used by SpectrumPhy instances created by this helper.

Parameters
channel

Definition at line 88 of file spectrum-analyzer-helper.cc.

References third::channel, m_channel, and NS_LOG_FUNCTION.

◆ SetChannel() [2/2]

void ns3::SpectrumAnalyzerHelper::SetChannel ( std::string  channelName)

Set the SpectrumChannel that will be used by SpectrumPhy instances created by this helper.

Parameters
channelName

Definition at line 95 of file spectrum-analyzer-helper.cc.

References third::channel, m_channel, and NS_LOG_FUNCTION.

◆ SetDeviceAttribute()

void ns3::SpectrumAnalyzerHelper::SetDeviceAttribute ( std::string  n1,
const AttributeValue v1 
)
Parameters
n1the name of the attribute to set
v1the value of the attribute to set

Set these attributes on each AlohaNoackNetDevice created

Definition at line 112 of file spectrum-analyzer-helper.cc.

References m_device, NS_LOG_FUNCTION, and ns3::ObjectFactory::Set().

+ Here is the call graph for this function:

◆ SetPhyAttribute()

void ns3::SpectrumAnalyzerHelper::SetPhyAttribute ( std::string  name,
const AttributeValue v 
)
Parameters
namethe name of the attribute to set
vthe value of the attribute

Set these attributes on each HdOfdmSpectrumPhy instance to be created

Definition at line 104 of file spectrum-analyzer-helper.cc.

References m_phy, NS_LOG_FUNCTION, and ns3::ObjectFactory::Set().

+ Here is the call graph for this function:

◆ SetRxSpectrumModel()

void ns3::SpectrumAnalyzerHelper::SetRxSpectrumModel ( Ptr< SpectrumModel m)

Set the spectrum model used by the created SpectrumAnalyzer instances to represent incoming signals.

Parameters
m

Definition at line 144 of file spectrum-analyzer-helper.cc.

References m_rxSpectrumModel, and NS_LOG_FUNCTION.

Member Data Documentation

◆ m_antenna

ObjectFactory ns3::SpectrumAnalyzerHelper::m_antenna
private

Object factory for the Antenna objects.

Definition at line 146 of file spectrum-analyzer-helper.h.

Referenced by SpectrumAnalyzerHelper(), Install(), and SetAntenna().

◆ m_channel

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

Channel.

Definition at line 148 of file spectrum-analyzer-helper.h.

Referenced by Install(), and SetChannel().

◆ m_device

ObjectFactory ns3::SpectrumAnalyzerHelper::m_device
private

Object factory for the NetDevice objects.

Definition at line 145 of file spectrum-analyzer-helper.h.

Referenced by SpectrumAnalyzerHelper(), Install(), and SetDeviceAttribute().

◆ m_phy

ObjectFactory ns3::SpectrumAnalyzerHelper::m_phy
private

Object factory for the phy objects.

Definition at line 144 of file spectrum-analyzer-helper.h.

Referenced by SpectrumAnalyzerHelper(), Install(), and SetPhyAttribute().

◆ m_prefix

std::string ns3::SpectrumAnalyzerHelper::m_prefix
private

Prefix for the output files.

Definition at line 150 of file spectrum-analyzer-helper.h.

Referenced by EnableAsciiAll(), and Install().

◆ m_rxSpectrumModel

Ptr<SpectrumModel> ns3::SpectrumAnalyzerHelper::m_rxSpectrumModel
private

Spectrum model.

Definition at line 149 of file spectrum-analyzer-helper.h.

Referenced by Install(), and SetRxSpectrumModel().


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