GNU Radio Manual and C++ API Reference  3.8.1.0
The Free & Open Software Radio Ecosystem
gr::prefs Class Reference

Base class for representing user preferences a la windows INI files.The real implementation is in Python, and is accessible from C++ via the magic of SWIG directors. More...

#include <gnuradio/prefs.h>

Public Member Functions

 prefs ()
 Creates an object to read preference files. More...
 
virtual ~prefs ()
 
void add_config_file (const std::string &configfile)
 
std::string to_string ()
 Returns the configuration options as a string. More...
 
void save ()
 Saves the configuration settings to ${HOME}/.gnuradio/config.conf. More...
 
virtual bool has_section (const std::string &section)
 Does section exist? More...
 
virtual bool has_option (const std::string &section, const std::string &option)
 Does option exist? More...
 
virtual const std::string get_string (const std::string &section, const std::string &option, const std::string &default_val)
 If option exists return associated value; else default_val. More...
 
virtual void set_string (const std::string &section, const std::string &option, const std::string &val)
 Set or add a string option to section with value val. More...
 
virtual bool get_bool (const std::string &section, const std::string &option, bool default_val)
 If option exists and value can be converted to bool, return it; else default_val. More...
 
virtual void set_bool (const std::string &section, const std::string &option, bool val)
 Set or add a bool option to section with value val. More...
 
virtual long get_long (const std::string &section, const std::string &option, long default_val)
 If option exists and value can be converted to long, return it; else default_val. More...
 
virtual void set_long (const std::string &section, const std::string &option, long val)
 Set or add a long option to section with value val. More...
 
virtual double get_double (const std::string &section, const std::string &option, double default_val)
 If option exists and value can be converted to double, return it; else default_val. More...
 
virtual void set_double (const std::string &section, const std::string &option, double val)
 Set or add a double option to section with value val. More...
 

Static Public Member Functions

static prefssingleton ()
 

Protected Member Functions

virtual std::vector< std::string > _sys_prefs_filenames ()
 
virtual void _read_files (const std::vector< std::string > &filenames)
 
virtual char * option_to_env (std::string section, std::string option)
 

Detailed Description

Base class for representing user preferences a la windows INI files.

The real implementation is in Python, and is accessible from C++ via the magic of SWIG directors.

Constructor & Destructor Documentation

◆ prefs()

gr::prefs::prefs ( )

Creates an object to read preference files.

If no file name is given (empty arg list or ""), this opens up the standard GNU Radio configuration files in prefix/etc/gnuradio/conf.d as well as ~/.gnuradio/config.conf.

Only access this through the singleton defined here:

◆ ~prefs()

virtual gr::prefs::~prefs ( )
virtual

Member Function Documentation

◆ _read_files()

virtual void gr::prefs::_read_files ( const std::vector< std::string > &  filenames)
protectedvirtual

◆ _sys_prefs_filenames()

virtual std::vector<std::string> gr::prefs::_sys_prefs_filenames ( )
protectedvirtual

◆ add_config_file()

void gr::prefs::add_config_file ( const std::string &  configfile)

If specifying a file name, this opens that specific configuration file of the standard form containing sections and key-value pairs:

[SectionName]
key0 = value0
key1 = value1

Referenced by thrift_server_template< rpcserver_base, rpcserver_thrift, rpcserver_booter_thrift >::thrift_server_template().

◆ get_bool()

virtual bool gr::prefs::get_bool ( const std::string &  section,
const std::string &  option,
bool  default_val 
)
virtual

If option exists and value can be converted to bool, return it; else default_val.

◆ get_double()

virtual double gr::prefs::get_double ( const std::string &  section,
const std::string &  option,
double  default_val 
)
virtual

If option exists and value can be converted to double, return it; else default_val.

◆ get_long()

virtual long gr::prefs::get_long ( const std::string &  section,
const std::string &  option,
long  default_val 
)
virtual

◆ get_string()

virtual const std::string gr::prefs::get_string ( const std::string &  section,
const std::string &  option,
const std::string &  default_val 
)
virtual

If option exists return associated value; else default_val.

Referenced by thrift_server_template< rpcserver_base, rpcserver_thrift, rpcserver_booter_thrift >::thrift_server_template().

◆ has_option()

virtual bool gr::prefs::has_option ( const std::string &  section,
const std::string &  option 
)
virtual

Does option exist?

◆ has_section()

virtual bool gr::prefs::has_section ( const std::string &  section)
virtual

Does section exist?

◆ option_to_env()

virtual char* gr::prefs::option_to_env ( std::string  section,
std::string  option 
)
protectedvirtual

◆ save()

void gr::prefs::save ( )

Saves the configuration settings to ${HOME}/.gnuradio/config.conf.

WARNING: this will overwrite your current config.conf file.

◆ set_bool()

virtual void gr::prefs::set_bool ( const std::string &  section,
const std::string &  option,
bool  val 
)
virtual

Set or add a bool option to section with value val.

◆ set_double()

virtual void gr::prefs::set_double ( const std::string &  section,
const std::string &  option,
double  val 
)
virtual

Set or add a double option to section with value val.

◆ set_long()

virtual void gr::prefs::set_long ( const std::string &  section,
const std::string &  option,
long  val 
)
virtual

Set or add a long option to section with value val.

◆ set_string()

virtual void gr::prefs::set_string ( const std::string &  section,
const std::string &  option,
const std::string &  val 
)
virtual

Set or add a string option to section with value val.

◆ singleton()

◆ to_string()

std::string gr::prefs::to_string ( )

Returns the configuration options as a string.


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