00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef __UDATA_H__
00018 #define __UDATA_H__
00019
00020 #include "unicode/utypes.h"
00021
00022 U_CDECL_BEGIN
00023
00072 typedef struct {
00075 uint16_t size;
00076
00079 uint16_t reservedWord;
00080
00081
00084 uint8_t isBigEndian;
00085
00088 uint8_t charsetFamily;
00089
00092 uint8_t sizeofUChar;
00093
00096 uint8_t reservedByte;
00097
00100 uint8_t dataFormat[4];
00101
00104 uint8_t formatVersion[4];
00105
00108 uint8_t dataVersion[4];
00109 } UDataInfo;
00110
00111
00112
00117 typedef struct UDataMemory UDataMemory;
00118
00132 typedef UBool U_CALLCONV
00133 UDataMemoryIsAcceptable(void *context,
00134 const char *type, const char *name,
00135 const UDataInfo *pInfo);
00136
00137
00159 U_CAPI UDataMemory * U_EXPORT2
00160 udata_open(const char *path, const char *type, const char *name,
00161 UErrorCode *pErrorCode);
00162
00211 U_CAPI UDataMemory * U_EXPORT2
00212 udata_openChoice(const char *path, const char *type, const char *name,
00213 UDataMemoryIsAcceptable *isAcceptable, void *context,
00214 UErrorCode *pErrorCode);
00215
00223 U_CAPI void U_EXPORT2
00224 udata_close(UDataMemory *pData);
00225
00232 U_CAPI const void * U_EXPORT2
00233 udata_getMemory(UDataMemory *pData);
00234
00253 U_CAPI void U_EXPORT2
00254 udata_getInfo(UDataMemory *pData, UDataInfo *pInfo);
00255
00290 U_CAPI void U_EXPORT2
00291 udata_setCommonData(const void *data, UErrorCode *err);
00292
00293
00318 U_CAPI void U_EXPORT2
00319 udata_setAppData(const char *packageName, const void *data, UErrorCode *err);
00320
00321 U_CDECL_END
00322
00323 #endif