xml_parser.hpp
Go to the documentation of this file.
1 // ----------------------------------------------------------------------------
2 // Copyright (C) 2002-2006 Marcin Kalicinski
3 // Copyright (C) 2009 Sebastian Redl
4 //
5 // Distributed under the Boost Software License, Version 1.0.
6 // (See accompanying file LICENSE_1_0.txt or copy at
7 // http://www.boost.org/LICENSE_1_0.txt)
8 //
9 // For more information, see www.boost.org
10 // ----------------------------------------------------------------------------
11 #ifndef BOOST_PROPERTY_TREE_XML_PARSER_HPP_INCLUDED
12 #define BOOST_PROPERTY_TREE_XML_PARSER_HPP_INCLUDED
13 
20 
21 #include <fstream>
22 #include <string>
23 #include <locale>
24 
25 namespace boost { namespace property_tree { namespace xml_parser
26 {
27 
45  template<class Ptree>
46  void read_xml(std::basic_istream<
47  typename Ptree::key_type::value_type
48  > &stream,
49  Ptree &pt,
50  int flags = 0)
51  {
52  read_xml_internal(stream, pt, flags, std::string());
53  }
54 
72  template<class Ptree>
73  void read_xml(const std::string &filename,
74  Ptree &pt,
75  int flags = 0,
76  const std::locale &loc = std::locale())
77  {
79  std::basic_ifstream<typename Ptree::key_type::value_type>
80  stream(filename.c_str());
81  if (!stream)
83  "cannot open file", filename, 0));
84  stream.imbue(loc);
85  read_xml_internal(stream, pt, flags, filename);
86  }
87 
99  template<class Ptree>
100  void write_xml(std::basic_ostream<
101  typename Ptree::key_type::value_type
102  > &stream,
103  const Ptree &pt,
104  const xml_writer_settings<
105  typename Ptree::key_type
106  > & settings = xml_writer_settings<
107  typename Ptree::key_type>() )
108  {
109  write_xml_internal(stream, pt, std::string(), settings);
110  }
111 
123  template<class Ptree>
124  void write_xml(const std::string &filename,
125  const Ptree &pt,
126  const std::locale &loc = std::locale(),
127  const xml_writer_settings<
128  typename Ptree::key_type
130  {
131  std::basic_ofstream<typename Ptree::key_type::value_type>
132  stream(filename.c_str());
133  if (!stream)
135  "cannot open file", filename, 0));
136  stream.imbue(loc);
137  write_xml_internal(stream, pt, filename, settings);
138  }
139 
140 } } }
141 
142 namespace boost { namespace property_tree
143 {
144  using xml_parser::read_xml;
145  using xml_parser::write_xml;
146  using xml_parser::xml_parser_error;
147 
148  using xml_parser::xml_writer_settings;
150 } }
151 
152 #endif
boost::property_tree::xml_parser::read_xml_internal
void read_xml_internal(std::basic_istream< typename Ptree::key_type::value_type > &stream, Ptree &pt, int flags, const std::string &filename)
Definition: xml_parser_read_rapidxml.hpp:86
boost::property_tree::xml_parser::xml_writer_settings
Xml writer settings. The default settings lead to no pretty printing.
Definition: xml_parser_writer_settings.hpp:36
boost::property_tree
Definition: exception_implementation.hpp:14
boost
BOOST_MOVE_USE_STANDARD_LIBRARY_MOVE.
xml_parser_read_rapidxml.hpp
boost::property_tree::xml_parser::xml_writer_make_settings
xml_writer_settings< Str > xml_writer_make_settings(typename Str::value_type indent_char=(typename Str::value_type)(' '), typename Str::size_type indent_count=0, const Str &encoding=widen< Str >("utf-8"))
Definition: xml_parser_writer_settings.hpp:55
boost::property_tree::xml_parser::write_xml
void write_xml(std::basic_ostream< typename Ptree::key_type::value_type > &stream, const Ptree &pt, const xml_writer_settings< typename Ptree::key_type > &settings=xml_writer_settings< typename Ptree::key_type >())
Definition: xml_parser.hpp:100
BOOST_ASSERT
#define BOOST_ASSERT(expr)
Definition: assert.hpp:60
BOOST_PROPERTY_TREE_THROW
#define BOOST_PROPERTY_TREE_THROW(e)
Definition: ptree_fwd.hpp:140
ptree.hpp
boost::property_tree::xml_parser::validate_flags
bool validate_flags(int flags)
Definition: xml_parser_flags.hpp:24
boost::property_tree::xml_parser::xml_parser_error
Xml parser error.
Definition: xml_parser_error.hpp:20
xml_parser_writer_settings.hpp
boost::property_tree::xml_parser::write_xml_internal
void write_xml_internal(std::basic_ostream< typename Ptree::key_type::value_type > &stream, const Ptree &pt, const std::string &filename, const xml_writer_settings< typename Ptree::key_type > &settings)
Definition: xml_parser_write.hpp:179
boost::property_tree::xml_parser::read_xml
void read_xml(std::basic_istream< typename Ptree::key_type::value_type > &stream, Ptree &pt, int flags=0)
Definition: xml_parser.hpp:46
xml_parser_error.hpp
xml_parser_write.hpp
xml_parser_flags.hpp


sick_visionary_ros
Author(s): SICK AG TechSupport 3D Snapshot
autogenerated on Thu Feb 8 2024 03:56:19