Bridge++  Ver. 1.3.x
parameterManager_XML.h
Go to the documentation of this file.
1 
14 #ifndef PARAMETERMANAGER_XML_INCLUDED
15 #define PARAMETERMANAGER_XML_INCLUDED
16 
17 #include "parameterManager.h"
18 
19 #include <string>
20 #include "tinyxml2.h"
21 
23 
35 {
36  public:
37  static const std::string class_name;
38 
40 
42  void read_params(const std::string& params_file, Parameters *params);
43 
45  void read_params(const std::string& params_file, unique_ptr<Parameters>& params) { return ParameterManager::read_params(params_file, params); }
46 
47  private:
48 
50  void process_params(const char *buf, Parameters *params);
51 
52  void traverse(const tinyxml2::XMLElement *elem, Parameters *params);
53 
54  void traverse_item(const tinyxml2::XMLElement *elem, Parameters *params);
55 
57  std::vector<int> convert_to_int_vector(const tinyxml2::XMLElement *elem);
58 
60  std::vector<double> convert_to_double_vector(const tinyxml2::XMLElement *elem);
61 };
62 #endif
virtual void read_params(const std::string &params_file, Parameters *params)=0
void read_params(const std::string &params_file, Parameters *params)
read parameters from file.
Class for parameters.
Definition: parameters.h:38
void read_params(const std::string &params_file, unique_ptr< Parameters > &params)
read parameters from file.
Parameter manager with YAML parser.
void process_params(const char *buf, Parameters *params)
read parameters from input file stream.
std::vector< int > convert_to_int_vector(const tinyxml2::XMLElement *elem)
convert from string to int vector.
void traverse(const tinyxml2::XMLElement *elem, Parameters *params)
static const std::string class_name
void traverse_item(const tinyxml2::XMLElement *elem, Parameters *params)
Base class of parameter manager.
std::vector< double > convert_to_double_vector(const tinyxml2::XMLElement *elem)
convert from string to double vector.