MRPT logo

CConfigFileBase.h File Reference

#include <mrpt/utils/utils_defs.h>
#include <mrpt/math/CMatrixTemplate.h>

Go to the source code of this file.


Classes

class  mrpt::utils::CConfigFileBase
 This class allows loading and storing values and vectors of different types from a configuration text, which can be implemented as a ".ini" file, a memory-stored string, etc. More...

Namespaces

namespace  mrpt
 The main namespace for all the Mobile Robot Programming Toolkit (MRPT) C++ libraries.
namespace  mrpt::utils
 Classes for serialization, sockets, ini-file manipulation, streams, list of properties-values, timewatch, extensions to STL.

Defines

#define MRPT_LOAD_CONFIG_VAR(variableName, variableType, configFileObject, sectionNameStr)   { variableName = configFileObject.read_##variableType(sectionNameStr,#variableName,variableName); }
 An useful macro for loading variables stored in a INI-like file under a key with the same name that the variable, and assigning the variable the current value if not found in the config file.
#define MRPT_LOAD_CONFIG_VAR_DEGREES(variableName, configFileObject, sectionNameStr)   { variableName = DEG2RAD( configFileObject.read_float(sectionNameStr,#variableName, RAD2DEG(variableName)) ); }
 Loads a float variable, stored as radians but entered in the INI-file as degrees:.
#define MRPT_LOAD_CONFIG_VAR_CAST(variableName, variableType, variableTypeCast, configFileObject, sectionNameStr)   { variableName = static_cast<variableTypeCast>(configFileObject.read_##variableType(sectionNameStr,#variableName,variableName)); }
#define MRPT_LOAD_HERE_CONFIG_VAR(variableName, variableType, targetVariable, configFileObject, sectionNameStr)   targetVariable = configFileObject.read_##variableType(sectionNameStr,#variableName,targetVariable,false);
#define MRPT_LOAD_HERE_CONFIG_VAR_NO_DEFAULT(variableName, variableType, targetVariable, configFileObject, sectionNameStr)
#define MRPT_LOAD_CONFIG_VAR_NO_DEFAULT(variableName, variableType, configFileObject, sectionNameStr)
#define MRPT_LOAD_CONFIG_VAR_CAST_NO_DEFAULT(variableName, variableType, variableTypeCast, configFileObject, sectionNameStr)
#define MRPT_LOAD_HERE_CONFIG_VAR_CAST(variableName, variableType, variableTypeCast, targetVariable, configFileObject, sectionNameStr)   targetVariable = static_cast<variableTypeCast>(configFileObject.read_##variableType(sectionNameStr,#variableName,targetVariable));
#define MRPT_LOAD_HERE_CONFIG_VAR_CAST_NO_DEFAULT(variableName, variableType, variableTypeCast, targetVariable, configFileObject, sectionNameStr)


Define Documentation

#define MRPT_LOAD_CONFIG_VAR ( variableName,
variableType,
configFileObject,
sectionNameStr   )     { variableName = configFileObject.read_##variableType(sectionNameStr,#variableName,variableName); }

An useful macro for loading variables stored in a INI-like file under a key with the same name that the variable, and assigning the variable the current value if not found in the config file.

The variableType must be the suffix of "read_XXX" functions, i.e. int, bool,...

Definition at line 235 of file CConfigFileBase.h.

#define MRPT_LOAD_CONFIG_VAR_CAST ( variableName,
variableType,
variableTypeCast,
configFileObject,
sectionNameStr   )     { variableName = static_cast<variableTypeCast>(configFileObject.read_##variableType(sectionNameStr,#variableName,variableName)); }

Definition at line 243 of file CConfigFileBase.h.

#define MRPT_LOAD_CONFIG_VAR_CAST_NO_DEFAULT ( variableName,
variableType,
variableTypeCast,
configFileObject,
sectionNameStr   ) 

Value:

{ try { \
                variableName = static_cast<variableTypeCast>(configFileObject.read_##variableType(sectionNameStr,#variableName,variableName,true)); \
    } catch (std::exception &) \
    { \
                THROW_EXCEPTION( format( "Value for '%s' not found in config file", static_cast<const char*>(#variableName ) )); \
        } }\

Definition at line 267 of file CConfigFileBase.h.

#define MRPT_LOAD_CONFIG_VAR_DEGREES ( variableName,
configFileObject,
sectionNameStr   )     { variableName = DEG2RAD( configFileObject.read_float(sectionNameStr,#variableName, RAD2DEG(variableName)) ); }

Loads a float variable, stored as radians but entered in the INI-file as degrees:.

Definition at line 240 of file CConfigFileBase.h.

#define MRPT_LOAD_CONFIG_VAR_NO_DEFAULT ( variableName,
variableType,
configFileObject,
sectionNameStr   ) 

Value:

{ try { \
                variableName = configFileObject.read_##variableType(sectionNameStr,#variableName,variableName,true); \
    } catch (std::exception &) \
    { \
                THROW_EXCEPTION( format( "Value for '%s' not found in config file", static_cast<const char*>(#variableName ) )); \
        } }\

Definition at line 259 of file CConfigFileBase.h.

#define MRPT_LOAD_HERE_CONFIG_VAR ( variableName,
variableType,
targetVariable,
configFileObject,
sectionNameStr   )     targetVariable = configFileObject.read_##variableType(sectionNameStr,#variableName,targetVariable,false);

Definition at line 247 of file CConfigFileBase.h.

#define MRPT_LOAD_HERE_CONFIG_VAR_CAST ( variableName,
variableType,
variableTypeCast,
targetVariable,
configFileObject,
sectionNameStr   )     targetVariable = static_cast<variableTypeCast>(configFileObject.read_##variableType(sectionNameStr,#variableName,targetVariable));

Definition at line 276 of file CConfigFileBase.h.

#define MRPT_LOAD_HERE_CONFIG_VAR_CAST_NO_DEFAULT ( variableName,
variableType,
variableTypeCast,
targetVariable,
configFileObject,
sectionNameStr   ) 

Value:

{ try { \
                targetVariable = static_cast<variableTypeCast>(configFileObject.read_##variableType(sectionNameStr,#variableName,targetVariable,true)); \
    } catch (std::exception &) \
    { \
                THROW_EXCEPTION( format( "Value for '%s' not found in config file", static_cast<const char*>(#variableName ) )); \
        } }\

Definition at line 279 of file CConfigFileBase.h.

#define MRPT_LOAD_HERE_CONFIG_VAR_NO_DEFAULT ( variableName,
variableType,
targetVariable,
configFileObject,
sectionNameStr   ) 

Value:

{ try { \
                targetVariable = configFileObject.read_##variableType(sectionNameStr,#variableName,targetVariable,true); \
    } catch (std::exception &) \
    { \
                THROW_EXCEPTION( format( "Value for '%s' not found in config file", static_cast<const char*>(#variableName ) )); \
        } }\

Definition at line 250 of file CConfigFileBase.h.




Page generated by Doxygen 1.5.7.1 for MRPT 0.6.5 SVN: at Mon Feb 23 13:35:09 EST 2009