6 #ifndef KNOWROB_PROPERTY_TREE_H_
7 #define KNOWROB_PROPERTY_TREE_H_
13 #include <boost/property_tree/ptree.hpp>
14 #include "knowrob/terms/Term.h"
15 #include "knowrob/DataSource.h"
73 auto begin()
const {
return properties_.begin(); }
78 auto end()
const {
return properties_.end(); }
88 auto ptree()
const {
return ptree_; }
91 std::map<std::string, TermPtr> properties_;
92 std::list<std::shared_ptr<DataSource>> dataSources_;
93 std::shared_ptr<const boost::property_tree::ptree> ptree_;
102 TermPtr get_value_recursive(
const boost::property_tree::ptree &node,
const std::string &path);
PropertyTree(std::shared_ptr< const boost::property_tree::ptree > ptree)
PropertyTree(const std::string_view json_str)
TermPtr createKeyTerm(std::string_view key) const
auto & dataSources() const
TermPtr get(std::string_view key, const TermPtr &defaultValue)
std::shared_ptr< Term > TermPtr