class mrpt::config::CConfigFileMemory
Overview
This class implements a config file-like interface over a memory-stored string list.
Use base class CConfigFileBase
‘s methods read_{int,float,double,string,...}()
and write()
to actually read and write values.
It can also parse a YAML text block and expose its fields (up to the first level of hierarchy, as allowed by INI-like files). This can be used to port MRPT classes relying on INI files to using YAML files transparently. This feature required building MRPT with yaml-cpp, and is provided by CConfigFileMemory::setContentFromYAML().
See: Configuration file format in MRPT
YAML support was introduced in MRPT 1.9.9
#include <mrpt/config/CConfigFileMemory.h> class CConfigFileMemory: public mrpt::config::CConfigFileBase { public: // structs struct Impl; // construction CConfigFileMemory(); CConfigFileMemory(const std::vector<std::string>& stringList); CConfigFileMemory(const std::string& str); // methods void setContent(const std::vector<std::string>& stringList); void setContent(const std::string& str); void getContent(std::string& str) const; std::string getContent() const; virtual void clear(); virtual void getAllSections(std::vector<std::string>& sections) const; virtual void getAllKeys(const std::string& section, std::vector<std::string>& keys) const; };
Inherited Members
public: // methods virtual void getAllSections(std::vector<std::string>& sections) const = 0; virtual void getAllKeys(const std::string& section, std::vector<std::string>& keys) const = 0; virtual void clear() = 0;
Construction
CConfigFileMemory()
Empty constructor.
Upon construction, call any of the “setContent” method
CConfigFileMemory(const std::vector<std::string>& stringList)
Constructor and initialize from a list of strings.
CConfigFileMemory(const std::string& str)
Constructor and initialize from string with the whole “config file”.
Methods
void setContent(const std::vector<std::string>& stringList)
Changes the contents of the virtual “config file”.
void setContent(const std::string& str)
Changes the contents of the virtual “config file”.
void getContent(std::string& str) const
Return the current contents of the virtual “config file”.
std::string getContent() const
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
virtual void clear()
Empties the virtual “config file”.
virtual void getAllSections(std::vector<std::string>& sections) const
Returns a list with all the section names.
virtual void getAllKeys( const std::string& section, std::vector<std::string>& keys ) const
Returns a list with all the keys into a section.