20 #ifndef _world_builder_parameters_h 21 #define _world_builder_parameters_h 25 #include <unordered_map> 27 #include <boost/property_tree/ptree.hpp> 39 using boost::property_tree::ptree;
49 namespace CoordinateSystems
127 void enter_subsection(
const std::string name);
136 void leave_subsection();
144 unsigned int get_unsigned_int(
const std::string &name)
const;
152 double get_double(
const std::string &name)
const;
160 std::string get_string(
const std::string &name)
const;
172 Point<dim> get_point(
const std::string &name)
const;
187 const Types::Array &get_array(
const std::string &name)
const;
197 const std::vector<T *> get_array(
const std::string &name)
const;
208 const std::string path_seperator =
".";
313 std::vector<std::unique_ptr<WorldBuilder::Features::Interface> >
features;
328 std::string get_full_path()
const;
336 std::string get_full_path_without_arrays()
const;
344 bool load_entry(
const std::string &name,
const bool required,
const Types::Interface &type,
unsigned int &location);
351 bool set_entry(
const std::string &name,
const Types::Interface &type,
unsigned int &location);
358 unsigned int path_level;
365 std::string get_relative_path()
const;
372 std::string get_relative_path_without_arrays()
const;
std::vector< Types::Array > vector_array
std::vector< Types::List > vector_list
std::vector< Types::Double > vector_double
std::vector< Types::String > vector_string
std::unordered_map< std::string, unsigned int > string_to_type_map
std::vector< Types::Point< 2 > > vector_point_2d
std::vector< std::unique_ptr< WorldBuilder::Features::Interface > > features
std::unique_ptr< WorldBuilder::CoordinateSystems::Interface > coordinate_system
std::vector< std::string > path
std::vector< Types::Point< 3 > > vector_point_3d
std::vector< Types::UnsignedInt > vector_unsigned_int