Merge branch 'master' into cairocanvas
[ardour.git] / libs / pbd / pbd / convert.h
index 12e63ba6fc3c2034886226bf13f8bc573d655ac4..fec0248157869bf9819438e09e465ffeefe75418 100644 (file)
 #ifndef __pbd_convert_h__
 #define __pbd_convert_h__
 
+#include <stdint.h>
 #include <string>
 #include <vector>
+#include <sstream>
+#include <iostream>
+#include <glibmm/ustring.h>
 
 namespace PBD {
 
 std::string short_version (std::string, std::string::size_type target_length);
 
-int    atoi (const std::string&);
-double atof (const std::string&);
-void   url_decode (std::string&);
+int     atoi (const std::string&);
+int32_t atol (const std::string&);
+int64_t atoll (const std::string&);
+double  atof (const std::string&);
+std::string url_decode (std::string const &);
 
-std::string length2string (const int32_t frames, const float sample_rate);
+std::string capitalize (const std::string&);
 
-std::vector<std::string> internationalize (const char **);
+// std::string length2string (const int32_t frames, const float sample_rate);
+std::string length2string (const int64_t frames, const double sample_rate);
+
+std::vector<std::string> internationalize (const char *, const char **);
+bool strings_equal_ignore_case (const std::string& a, const std::string& b);
+
+template <class T> std::string 
+to_string (T t, std::ios_base & (*f)(std::ios_base&))
+{
+       std::ostringstream oss;
+       oss << f << t;
+       return oss.str();
+}
+
+bool string_is_affirmative (const std::string&);
+
+const char *
+sgettext (const char *, const char *);
 
 } //namespace PBD