39 #ifndef U_HIDE_INTERNAL_API
44 #define U_TREE_SEPARATOR '-'
50 #define U_TREE_SEPARATOR_STRING "-"
56 #define U_TREE_ENTRY_SEP_CHAR '/'
62 #define U_TREE_ENTRY_SEP_STRING "/"
68 #define U_ICUDATA_ALIAS "ICUDATA"
167 const char *type,
const char *name,
193 udata_open(
const char *path,
const char *type,
const char *name,
371 UDATA_FILE_ACCESS_COUNT
void udata_setAppData(const char *packageName, const void *data, UErrorCode *err)
This function bypasses the normal ICU data loading process for application-specific data and allows y...
void udata_getInfo(UDataMemory *pData, UDataInfo *pInfo)
Get the information from the data memory header.
uint8_t isBigEndian
0 for little-endian machine, 1 for big-endian
void udata_setCommonData(const void *data, UErrorCode *err)
This function bypasses the normal ICU data loading process and allows you to force ICU's system data ...
#define U_CALLCONV
Similar to U_CDECL_BEGIN/U_CDECL_END, this qualifier is necessary in callback function typedefs to ma...
UDataFileAccess
Possible settings for udata_setFileAccess()
uint8_t charsetFamily
see U_CHARSET_FAMILY values in utypes.h
ICU loads data from packages first, and only from single files if the data cannot be found in a packa...
unsigned char uint8_t
Define 64 bit limits.
uint16_t size
sizeof(UDataInfo)
#define U_CDECL_BEGIN
This is used to begin a declaration of a library private ICU C API.
UDataMemory * udata_open(const char *path, const char *type, const char *name, UErrorCode *pErrorCode)
Convenience function.
ICU looks for data in single files first, then in packages.
An alias for the default access mode.
struct UDataMemory UDataMemory
Forward declaration of the data memory type.
void udata_close(UDataMemory *pData)
Close the data memory.
UBool UDataMemoryIsAcceptable(void *context, const char *type, const char *name, const UDataInfo *pInfo)
Callback function for udata_openChoice().
void udata_setFileAccess(UDataFileAccess access, UErrorCode *status)
This function may be called to control how ICU loads data.
#define U_CDECL_END
This is used to end a declaration of a library private ICU C API.
ICU does not access the file system for data loading.
const void * udata_getMemory(UDataMemory *pData)
Get the pointer to the actual data inside the data memory.
UErrorCode
Error code to replace exception handling, so that the code is compatible with all C++ compilers...
UDataMemory * udata_openChoice(const char *path, const char *type, const char *name, UDataMemoryIsAcceptable *isAcceptable, void *context, UErrorCode *pErrorCode)
Data loading function.
UDataInfo contains the properties about the requested data.
unsigned short uint16_t
Define 64 bit limits.
uint8_t reservedByte
unused, set to 0
Basic definitions for ICU, for both C and C++ APIs.
uint8_t sizeofUChar
sizeof(UChar), one of { 1, 2, 4 }
ICU only loads data from packages, not from single files.
#define U_STABLE
This is used to declare a function as a stable public ICU C API.
int8_t UBool
The ICU boolean type.
uint16_t reservedWord
unused, set to 0