ICU 54.1  54.1
putil.h
Go to the documentation of this file.
1 /*
2 ******************************************************************************
3 *
4 * Copyright (C) 1997-2014, International Business Machines
5 * Corporation and others. All Rights Reserved.
6 *
7 ******************************************************************************
8 *
9 * FILE NAME : putil.h
10 *
11 * Date Name Description
12 * 05/14/98 nos Creation (content moved here from utypes.h).
13 * 06/17/99 erm Added IEEE_754
14 * 07/22/98 stephen Added IEEEremainder, max, min, trunc
15 * 08/13/98 stephen Added isNegativeInfinity, isPositiveInfinity
16 * 08/24/98 stephen Added longBitsFromDouble
17 * 03/02/99 stephen Removed openFile(). Added AS400 support.
18 * 04/15/99 stephen Converted to C
19 * 11/15/99 helena Integrated S/390 changes for IEEE support.
20 * 01/11/00 helena Added u_getVersion.
21 ******************************************************************************
22 */
23 
24 #ifndef PUTIL_H
25 #define PUTIL_H
26 
27 #include "unicode/utypes.h"
33 /*==========================================================================*/
34 /* Platform utilities */
35 /*==========================================================================*/
36 
67 U_STABLE const char* U_EXPORT2 u_getDataDirectory(void);
68 
69 
89 U_STABLE void U_EXPORT2 u_setDataDirectory(const char *directory);
90 
91 #ifndef U_HIDE_INTERNAL_API
92 
100 U_INTERNAL const char * U_EXPORT2 u_getTimeZoneFilesDirectory(UErrorCode *status);
101 
110 U_INTERNAL void U_EXPORT2 u_setTimeZoneFilesDirectory(const char *path, UErrorCode *status);
111 #endif /* U_HIDE_INTERNAL_API */
112 
113 
120 #if U_PLATFORM_USES_ONLY_WIN32_API
121 # define U_FILE_SEP_CHAR '\\'
122 # define U_FILE_ALT_SEP_CHAR '/'
123 # define U_PATH_SEP_CHAR ';'
124 # define U_FILE_SEP_STRING "\\"
125 # define U_FILE_ALT_SEP_STRING "/"
126 # define U_PATH_SEP_STRING ";"
127 #else
128 # define U_FILE_SEP_CHAR '/'
129 # define U_FILE_ALT_SEP_CHAR '/'
130 # define U_PATH_SEP_CHAR ':'
131 # define U_FILE_SEP_STRING "/"
132 # define U_FILE_ALT_SEP_STRING "/"
133 # define U_PATH_SEP_STRING ":"
134 #endif
135 
156 U_STABLE void U_EXPORT2
157 u_charsToUChars(const char *cs, UChar *us, int32_t length);
158 
178 U_STABLE void U_EXPORT2
179 u_UCharsToChars(const UChar *us, char *cs, int32_t length);
180 
181 #endif
const char * u_getDataDirectory(void)
Platform utilities isolates the platform dependencies of the libarary.
void u_charsToUChars(const char *cs, UChar *us, int32_t length)
Convert char characters to UChar characters.
#define U_INTERNAL
This is used to declare a function as an internal ICU C API.
Definition: umachine.h:117
void u_UCharsToChars(const UChar *us, char *cs, int32_t length)
Convert UChar characters to char characters.
void u_setDataDirectory(const char *directory)
Set the ICU data directory.
uint16_t UChar
Define UChar to be UCHAR_TYPE, if that is #defined (for example, to char16_t), or wchar_t if that is ...
Definition: umachine.h:312
UErrorCode
Error code to replace exception handling, so that the code is compatible with all C++ compilers...
Definition: utypes.h:476
void u_setTimeZoneFilesDirectory(const char *path, UErrorCode *status)
Set the time zone files override directory.
Basic definitions for ICU, for both C and C++ APIs.
const char * u_getTimeZoneFilesDirectory(UErrorCode *status)
Return the time zone files override directory, or an empty string if no directory was specified...
#define U_STABLE
This is used to declare a function as a stable public ICU C API.
Definition: umachine.h:109