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

A class to enable loading of configuration store from a raw text file. More...

#include "raw-text-config.h"

+ Inheritance diagram for ns3::RawTextConfigLoad:
+ Collaboration diagram for ns3::RawTextConfigLoad:

Public Member Functions

 RawTextConfigLoad ()
 default constructor More...
 
 ~RawTextConfigLoad () override
 destructor More...
 
void Attributes () override
 Load or save the attributes values. More...
 
void Default () override
 Load or save the default values. More...
 
void Global () override
 Load or save the global values. More...
 
void SetFilename (std::string filename) override
 Set the file name. More...
 
- Public Member Functions inherited from ns3::FileConfig
virtual ~FileConfig ()
 
void SetSaveDeprecated (bool saveDeprecated)
 Set if to save deprecated attributes. More...
 

Private Member Functions

virtual bool ParseLine (const std::string &line, std::string &type, std::string &name, std::string &value)
 Parse (potentially multi-) line configs into type, name, and values. More...
 
std::string Strip (std::string value)
 Strip out attribute value. More...
 

Private Attributes

std::ifstream * m_is
 Config store input stream. More...
 

Additional Inherited Members

- Protected Attributes inherited from ns3::FileConfig
bool m_saveDeprecated
 save deprecated attributes More...
 

Detailed Description

A class to enable loading of configuration store from a raw text file.

Definition at line 57 of file raw-text-config.h.

Constructor & Destructor Documentation

◆ RawTextConfigLoad()

ns3::RawTextConfigLoad::RawTextConfigLoad ( )

default constructor

Definition at line 205 of file raw-text-config.cc.

References NS_LOG_FUNCTION.

◆ ~RawTextConfigLoad()

ns3::RawTextConfigLoad::~RawTextConfigLoad ( )
override

destructor

Definition at line 211 of file raw-text-config.cc.

References m_is, and NS_LOG_FUNCTION.

Member Function Documentation

◆ Attributes()

void ns3::RawTextConfigLoad::Attributes ( )
overridevirtual

Load or save the attributes values.

Implements ns3::FileConfig.

Definition at line 298 of file raw-text-config.cc.

References m_is, NS_LOG_DEBUG, NS_LOG_FUNCTION, ParseLine(), ns3::Config::Set(), Strip(), and check-style-clang-format::type.

Referenced by ns3::load_clicked_attribute().

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

◆ Default()

void ns3::RawTextConfigLoad::Default ( )
overridevirtual

Load or save the default values.

Implements ns3::FileConfig.

Definition at line 242 of file raw-text-config.cc.

References m_is, NS_LOG_DEBUG, NS_LOG_FUNCTION, ParseLine(), ns3::Config::SetDefault(), Strip(), and check-style-clang-format::type.

Referenced by ns3::load_clicked_default().

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

◆ Global()

void ns3::RawTextConfigLoad::Global ( )
overridevirtual

Load or save the global values.

Implements ns3::FileConfig.

Definition at line 270 of file raw-text-config.cc.

References m_is, NS_LOG_DEBUG, NS_LOG_FUNCTION, ParseLine(), ns3::Config::SetGlobal(), Strip(), and check-style-clang-format::type.

+ Here is the call graph for this function:

◆ ParseLine()

bool ns3::RawTextConfigLoad::ParseLine ( const std::string &  line,
std::string &  type,
std::string &  name,
std::string &  value 
)
privatevirtual

Parse (potentially multi-) line configs into type, name, and values.

This will return false for blank lines, comments (lines beginning with '#'), and incomplete entries. An entry is considered complete when a type and name have been found and the value contains two delimiting quotation marks '"'.

Parameters
linethe config file line
typethe config type {default, global, value}
namethe config attribute name
valuethe value to set
Returns
true if all of type, name, and value parsed; false otherwise

Definition at line 326 of file raw-text-config.cc.

References NS_LOG_FUNCTION, and check-style-clang-format::type.

Referenced by Attributes(), Default(), and Global().

+ Here is the caller graph for this function:

◆ SetFilename()

void ns3::RawTextConfigLoad::SetFilename ( std::string  filename)
overridevirtual

Set the file name.

Parameters
filenamethe filename

Implements ns3::FileConfig.

Definition at line 223 of file raw-text-config.cc.

References m_is, and NS_LOG_FUNCTION.

Referenced by ns3::load_clicked_attribute(), and ns3::load_clicked_default().

+ Here is the caller graph for this function:

◆ Strip()

std::string ns3::RawTextConfigLoad::Strip ( std::string  value)
private

Strip out attribute value.

Parameters
valuethe input string
Returns
the updated string

Definition at line 231 of file raw-text-config.cc.

References NS_ABORT_MSG_IF, NS_LOG_FUNCTION, and two-ray-to-three-gpp-ch-calibration::start.

Referenced by Attributes(), Default(), and Global().

+ Here is the caller graph for this function:

Member Data Documentation

◆ m_is

std::ifstream* ns3::RawTextConfigLoad::m_is
private

Config store input stream.

Definition at line 93 of file raw-text-config.h.

Referenced by ~RawTextConfigLoad(), Attributes(), Default(), Global(), and SetFilename().


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