9 #include "boost/filesystem/path.hpp"
13 #include "owlcpp/io/detail/map_traits.hpp"
40 typedef detail::Map_traits<Catalog> traits;
41 typedef traits::map_std_type map_std_type;
42 typedef traits::map_ns_type map_ns_type;
43 typedef traits::map_node_type map_node_type;
46 typedef traits::map_doc_type map_doc_type;
47 typedef map_doc_type::iterator iterator;
48 typedef map_doc_type::const_iterator const_iterator;
69 Catalog() : map_std_(map_std_type::get(
Nodes_none())) {}
71 std::size_t size()
const {
return map_doc_.size();}
72 const_iterator begin()
const {
return map_doc_.begin();}
73 const_iterator end()
const {
return map_doc_.end();}
75 map_ns_type
const& map_ns()
const {
return map_ns_;}
76 map_node_type
const& map_node()
const {
return map_node_;}
77 map_doc_type
const& map_doc()
const {
return map_doc_;}
79 Node_id ontology_iri_id(
const Doc_id did)
const {
80 return map_doc_[did].ontology_iri;
83 Node_id version_iri_id(
const Doc_id did)
const {
84 return map_doc_[did].version_iri;
87 std::string path(
const Doc_id did)
const {
return map_doc_[did].path;}
88 std::string ontology_iri_str(
const Doc_id)
const;
89 std::string version_iri_str(
const Doc_id)
const;
92 map_std_type
const& map_std_;
94 map_node_type map_node_;
95 map_doc_type map_doc_;
116 OWLCPP_IO_DECL std::size_t
add(
118 boost::filesystem::path
const& path,
119 const bool recurse =
false,
120 const std::size_t search_depth = std::numeric_limits<std::size_t>::max()