00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015 #ifndef __UCLEAN_H__
00016 #define __UCLEAN_H__
00017
00018 #include "unicode/utypes.h"
00050 U_STABLE void U_EXPORT2
00051 u_init(UErrorCode *status);
00052
00053 #ifndef U_HIDE_SYSTEM_API
00054
00099 U_STABLE void U_EXPORT2
00100 u_cleanup(void);
00101
00102
00111 typedef void *U_CALLCONV UMemAllocFn(const void *context, size_t size);
00120 typedef void *U_CALLCONV UMemReallocFn(const void *context, void *mem, size_t size);
00131 typedef void U_CALLCONV UMemFreeFn (const void *context, void *mem);
00132
00149 U_STABLE void U_EXPORT2
00150 u_setMemoryFunctions(const void *context, UMemAllocFn *a, UMemReallocFn *r, UMemFreeFn *f,
00151 UErrorCode *status);
00152
00153
00154 #ifndef U_HIDE_DEPRECATED_API
00155
00156
00157
00158
00159
00160
00161
00162
00163
00171 typedef void *UMTX;
00172
00189 typedef void U_CALLCONV UMtxInitFn (const void *context, UMTX *mutex, UErrorCode* status);
00190
00191
00201 typedef void U_CALLCONV UMtxFn (const void *context, UMTX *mutex);
00202
00203
00221 U_DEPRECATED void U_EXPORT2
00222 u_setMutexFunctions(const void *context, UMtxInitFn *init, UMtxFn *destroy, UMtxFn *lock, UMtxFn *unlock,
00223 UErrorCode *status);
00224
00225
00234 typedef int32_t U_CALLCONV UMtxAtomicFn(const void *context, int32_t *p);
00235
00251 U_DEPRECATED void U_EXPORT2
00252 u_setAtomicIncDecFunctions(const void *context, UMtxAtomicFn *inc, UMtxAtomicFn *dec,
00253 UErrorCode *status);
00254
00255 #endif
00256 #endif
00257
00258 #endif