30 #include <boost/foreach.hpp> 
   31 #include <boost/lexical_cast.hpp> 
   37 #include <boost/property_tree/ptree.hpp> 
   42 void te::common::Convert(
const boost::property_tree::ptree& p, std::map<std::string, std::string>& dict)
 
   44   BOOST_FOREACH(
const boost::property_tree::ptree::value_type& v, p)
 
   50     BOOST_FOREACH(
const boost::property_tree::ptree::value_type& v2, v.second.get_child(
""))
 
   52       const std::string& f = v2.first.data();
 
   53       const std::string& s = v2.second.data();
 
   60 void te::common::Convert(
const boost::property_tree::ptree& p, std::vector<std::pair<std::string, std::string> > & vp)
 
   62   BOOST_FOREACH(
const boost::property_tree::ptree::value_type& v, p)
 
   64     BOOST_FOREACH(
const boost::property_tree::ptree::value_type& v2, v.second.get_child(
""))
 
   68       std::pair<std::string, std::string> in_pair;
 
   69       in_pair.first = v2.first.data();
 
   70       in_pair.second = v2.second.data();
 
   71       vp.push_back(in_pair);
 
   78   BOOST_FOREACH(
const boost::property_tree::ptree::value_type& v, p)
 
   80     vect.push_back(v.second.data());
 
   87   BOOST_FOREACH(
const boost::property_tree::ptree::value_type& v, p)
 
   90     vectd.push_back(boost::lexical_cast<unsigned char>(v.second.data()));
 
   97   BOOST_FOREACH(
const boost::property_tree::ptree::value_type& v, p)
 
   99     vectd.push_back(boost::lexical_cast<double>(v.second.data()));
 
  106   BOOST_FOREACH(
const boost::property_tree::ptree::value_type& v, p)
 
  108     vect.push_back(boost::lexical_cast<size_t>(v.second.data()));
 
  115   BOOST_FOREACH(
const boost::property_tree::ptree::value_type& v, p)
 
  117     BOOST_FOREACH(
const boost::property_tree::ptree::value_type& v2, v.second.get_child(
""))
 
  119       std::vector<double> envrep;
 
  130       vect.push_back(envrep);
 
  135 void te::common::Convert(
const boost::property_tree::ptree& p, std::vector<std::map<std::string, std::string> >& vectm)
 
  137   BOOST_FOREACH(
const boost::property_tree::ptree::value_type& v, p)
 
  140     std::map<std::string, std::string> dict;
 
  141     BOOST_FOREACH(
const boost::property_tree::ptree::value_type& v2, v.second.get_child(
""))
 
  143       const std::string& f = v2.first.data();
 
  144       const std::string& s = v2.second.data();
 
  148     vectm.push_back(dict);
 
TECOMMONEXPORT std::string ConvertLatin1UTFString(const std::string &data, const bool &toUtf=true)
Converts a string from latin1 to utf8 and vice-versa. 
 
TECOMMONEXPORT void Convert(const boost::property_tree::ptree &p, std::map< std::string, std::string > &dict)
Converts a property tree node into a std::map<std::string, std::string>. 
 
This file contains several utility functions for dealing with Boost containers and algorithms...