summaryrefslogtreecommitdiff
path: root/tipper/str_utils.h
diff options
context:
space:
mode:
Diffstat (limited to 'tipper/str_utils.h')
-rw-r--r--tipper/str_utils.h44
1 files changed, 44 insertions, 0 deletions
diff --git a/tipper/str_utils.h b/tipper/str_utils.h
new file mode 100644
index 0000000..5cef279
--- /dev/null
+++ b/tipper/str_utils.h
@@ -0,0 +1,44 @@
+#ifndef _STR_UTILS_INC
+#define _STR_UTILS_INC
+
+void set_codepage();
+
+bool a2w(const char *as, wchar_t *buff, int bufflen);
+bool w2a(const wchar_t *ws, char *buff, int bufflen);
+
+bool u2w(const char *us, wchar_t *buff, int bufflen);
+bool w2u(const wchar_t *ws, char *buff, int bufflen);
+
+bool a2u(const char *as, char *buff, int bufflen);
+bool u2a(const char *ws, char *buff, int bufflen);
+
+bool t2w(const TCHAR *ts, wchar_t *buff, int bufflen);
+bool w2t(const wchar_t *ws, TCHAR *buff, int bufflen);
+
+bool t2a(const TCHAR *ts, char *buff, int bufflen);
+bool a2t(const char *as, TCHAR *buff, int bufflen);
+
+bool t2u(const TCHAR *ts, char *buff, int bufflen);
+bool u2t(const char *us, TCHAR *buff, int bufflen);
+
+// remember to free return value
+wchar_t *a2w(const char *as);
+char *w2a(const wchar_t *ws);
+
+wchar_t *u2w(const char *us);
+char *w2u(const wchar_t *ws);
+
+char *u2a(const char *us);
+char *a2u(const char *as);
+
+wchar_t *t2w(const TCHAR *ts);
+TCHAR *w2t(const wchar_t *ws);
+
+TCHAR *u2t(const char *us);
+char *t2u(const TCHAR *ts);
+
+char *t2a(const TCHAR *ts);
+TCHAR *a2t(const char *as);
+
+#endif
+