40 #include "locale_convert.h"
51 dcp::locale_convert (
unsigned char x,
int,
bool)
54 snprintf (buffer,
sizeof(buffer),
"%hhd", x);
61 dcp::locale_convert (
unsigned short int x,
int,
bool)
64 snprintf (buffer,
sizeof(buffer),
"%hd", x);
71 dcp::locale_convert (
int x,
int,
bool)
74 snprintf (buffer,
sizeof(buffer),
"%d", x);
81 dcp::locale_convert (
unsigned int x,
int,
bool)
84 snprintf (buffer,
sizeof(buffer),
"%u", x);
91 dcp::locale_convert (
long int x,
int,
bool)
95 __mingw_snprintf (buffer,
sizeof(buffer),
"%ld", x);
97 snprintf (buffer,
sizeof(buffer),
"%ld", x);
105 dcp::locale_convert (
unsigned long int x,
int,
bool)
108 snprintf (buffer,
sizeof(buffer),
"%lu", x);
115 dcp::locale_convert (
long long int x,
int,
bool)
118 #ifdef LIBDCP_WINDOWS
119 __mingw_snprintf (buffer,
sizeof(buffer),
"%lld", x);
121 snprintf (buffer,
sizeof(buffer),
"%lld", x);
129 dcp::locale_convert (
unsigned long long int x,
int,
bool)
132 #ifdef LIBDCP_WINDOWS
133 __mingw_snprintf (buffer,
sizeof(buffer),
"%llu", x);
135 snprintf (buffer,
sizeof(buffer),
"%llu", x);
143 dcp::locale_convert (
float x,
int precision,
bool fixed)
147 snprintf (format,
sizeof(format),
"%%.%df", precision);
149 snprintf (format,
sizeof(format),
"%%.%dg", precision);
152 snprintf (buffer,
sizeof(buffer), format, x);
159 dcp::locale_convert (
double x,
int precision,
bool fixed)
163 snprintf (format,
sizeof(format),
"%%.%df", precision);
165 snprintf (format,
sizeof(format),
"%%.%dg", precision);
168 snprintf (buffer,
sizeof(buffer), format, x);
175 dcp::locale_convert (
string x,
int,
bool)
183 dcp::locale_convert (
char* x,
int,
bool)
191 dcp::locale_convert (
char const * x,
int,
bool)
199 dcp::locale_convert (
wchar_t const * x,
int,
bool)
202 return string (s.begin(), s.end());
208 dcp::locale_convert (
char x,
int,
bool)
218 dcp::locale_convert (boost::filesystem::path x,
int,
bool)
226 dcp::locale_convert (
string x,
int,
bool)
229 sscanf (x.c_str(),
"%hhu", &y);
236 dcp::locale_convert (
string x,
int,
bool)
238 unsigned short int y = 0;
239 sscanf (x.c_str(),
"%hu", &y);
246 dcp::locale_convert (
string x,
int,
bool)
249 sscanf (x.c_str(),
"%u", &y);
256 dcp::locale_convert (
string x,
int,
bool)
259 sscanf (x.c_str(),
"%d", &y);
266 dcp::locale_convert (
string x,
int,
bool)
269 sscanf (x.c_str(),
"%ld", &y);
276 dcp::locale_convert (
string x,
int,
bool)
279 #ifdef LIBDCP_WINDOWS
280 __mingw_sscanf (x.c_str(),
"%lud", &y);
282 sscanf (x.c_str(),
"%lud", &y);
290 dcp::locale_convert (
string x,
int,
bool)
293 #ifdef LIBDCP_WINDOWS
294 __mingw_sscanf (x.c_str(),
"%lld", &y);
296 sscanf (x.c_str(),
"%lld", &y);
304 dcp::locale_convert (
string x,
int,
bool)
306 unsigned long long y = 0;
307 #ifdef LIBDCP_WINDOWS
308 __mingw_sscanf (x.c_str(),
"%llud", &y);
310 sscanf (x.c_str(),
"%llud", &y);
318 dcp::locale_convert (
string x,
int,
bool)
321 sscanf (x.c_str(),
"%f", &y);
328 dcp::locale_convert (
string x,
int,
bool)
331 sscanf (x.c_str(),
"%lf", &y);