Fix missing version string when Popen communicate returns byte strings.
[libdcp.git] / src / locale_convert.h
index 1b6ea42fb69f821b8a6f675e671f87b4c2e3ef29..ccce7b829e9c7cbc5d1447cf66e7af93bf901eff 100644 (file)
 #ifndef LIBDCP_LOCALE_CONVERT_H
 #define LIBDCP_LOCALE_CONVERT_H
 
+#include <boost/filesystem.hpp>
 #include <boost/static_assert.hpp>
 #include <string>
+#include <cstdio>
 
 namespace dcp {
 
@@ -55,11 +57,23 @@ locale_convert (int x, int, bool);
 
 template <>
 std::string
-locale_convert (int64_t x, int, bool);
+locale_convert (unsigned int x, int, bool);
 
 template <>
 std::string
-locale_convert (uint64_t x, int, bool);
+locale_convert (long int x, int, bool);
+
+template <>
+std::string
+locale_convert (unsigned long int x, int, bool);
+
+template <>
+std::string
+locale_convert (long long int x, int, bool);
+
+template <>
+std::string
+locale_convert (unsigned long long int x, int, bool);
 
 template <>
 std::string
@@ -81,12 +95,28 @@ template <>
 std::string
 locale_convert (char const * x, int, bool);
 
+template <>
+std::string
+locale_convert (wchar_t const * x, int, bool);
+
+template <>
+std::string
+locale_convert (char x, int, bool);
+
+template <>
+std::string
+locale_convert (boost::filesystem::path x, int, bool);
+
 template <>
 int
 locale_convert (std::string x, int, bool);
 
 template <>
-int64_t
+long
+locale_convert (std::string x, int, bool);
+
+template <>
+long long
 locale_convert (std::string x, int, bool);
 
 template <>