Base class for representing user preferences a la windows INI files. More...
#include <gnuradio/prefs.h>
Public Member Functions | |
prefs () | |
Creates an object to read preference files. More... | |
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... | |
bool | has_section (const std::string §ion) |
Does section exist? More... | |
bool | has_option (const std::string §ion, const std::string &option) |
Does option exist? More... | |
const std::string | get_string (const std::string §ion, const std::string &option, const std::string &default_val) |
If option exists return associated value; else default_val. More... | |
void | set_string (const std::string §ion, const std::string &option, const std::string &val) |
Set or add a string option to section with value val . More... | |
bool | get_bool (const std::string §ion, const std::string &option, bool default_val) |
If option exists and value can be converted to bool, return it; else default_val. More... | |
void | set_bool (const std::string §ion, const std::string &option, bool val) |
Set or add a bool option to section with value val . More... | |
long | get_long (const std::string §ion, const std::string &option, long default_val) |
If option exists and value can be converted to long, return it; else default_val. More... | |
void | set_long (const std::string §ion, const std::string &option, long val) |
Set or add a long option to section with value val . More... | |
double | get_double (const std::string §ion, const std::string &option, double default_val) |
If option exists and value can be converted to double, return it; else default_val. More... | |
void | set_double (const std::string §ion, const std::string &option, double val) |
Set or add a double option to section with value val . More... | |
Static Public Member Functions | |
static prefs * | singleton () |
Protected Member Functions | |
std::vector< std::string > | _sys_prefs_filenames () |
void | _read_files (const std::vector< std::string > &filenames) |
char * | option_to_env (std::string section, std::string option) |
template<typename T > | |
T | get_general (const std::string §ion, const std::string &option, const T &default_val) |
template<typename T > | |
void | set_general (const std::string §ion, const std::string &option, const T &val) |
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.
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:
|
protected |
|
protected |
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:
Referenced by thrift_server_template< TserverBase, TserverClass, TImplClass >::thrift_server_template().
bool gr::prefs::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.
double gr::prefs::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.
|
protected |
long gr::prefs::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.
Referenced by thrift_server_template< TserverBase, TserverClass, TImplClass >::thrift_server_template().
const std::string gr::prefs::get_string | ( | const std::string & | section, |
const std::string & | option, | ||
const std::string & | default_val | ||
) |
If option exists return associated value; else default_val.
Referenced by thrift_server_template< TserverBase, TserverClass, TImplClass >::thrift_server_template().
bool gr::prefs::has_option | ( | const std::string & | section, |
const std::string & | option | ||
) |
Does option
exist?
bool gr::prefs::has_section | ( | const std::string & | section | ) |
Does section
exist?
|
protected |
void gr::prefs::save | ( | ) |
Saves the configuration settings to ${HOME}/.gnuradio/config.conf.
WARNING: this will overwrite your current config.conf file.
void gr::prefs::set_bool | ( | const std::string & | section, |
const std::string & | option, | ||
bool | val | ||
) |
Set or add a bool option
to section
with value val
.
void gr::prefs::set_double | ( | const std::string & | section, |
const std::string & | option, | ||
double | val | ||
) |
Set or add a double option
to section
with value val
.
|
protected |
void gr::prefs::set_long | ( | const std::string & | section, |
const std::string & | option, | ||
long | val | ||
) |
Set or add a long option
to section
with value val
.
void gr::prefs::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
.
|
static |
std::string gr::prefs::to_string | ( | ) |
Returns the configuration options as a string.