ICU 49.1.1  49.1.1
uclean.h
Go to the documentation of this file.
00001 /*
00002 ******************************************************************************
00003 * Copyright (C) 2001-2011, International Business Machines
00004 *                Corporation and others. All Rights Reserved.
00005 ******************************************************************************
00006 *   file name:  uclean.h
00007 *   encoding:   US-ASCII
00008 *   tab size:   8 (not used)
00009 *   indentation:4
00010 *
00011 *   created on: 2001July05
00012 *   created by: George Rhoten
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 
00103 
00104 
00112 typedef void *UMTX;
00113 
00130 typedef void U_CALLCONV UMtxInitFn (const void *context, UMTX  *mutex, UErrorCode* status);
00131 
00132 
00142 typedef void U_CALLCONV UMtxFn   (const void *context, UMTX  *mutex);
00143 
00144 
00164 U_STABLE void U_EXPORT2 
00165 u_setMutexFunctions(const void *context, UMtxInitFn *init, UMtxFn *destroy, UMtxFn *lock, UMtxFn *unlock,
00166                     UErrorCode *status);
00167 
00168 
00177 typedef int32_t U_CALLCONV UMtxAtomicFn(const void *context, int32_t *p);
00178 
00194 U_STABLE void U_EXPORT2 
00195 u_setAtomicIncDecFunctions(const void *context, UMtxAtomicFn *inc, UMtxAtomicFn *dec,
00196                     UErrorCode *status);
00197 
00198 
00199 
00208 typedef void *U_CALLCONV UMemAllocFn(const void *context, size_t size);
00217 typedef void *U_CALLCONV UMemReallocFn(const void *context, void *mem, size_t size);
00228 typedef void  U_CALLCONV UMemFreeFn (const void *context, void *mem);
00229 
00246 U_STABLE void U_EXPORT2 
00247 u_setMemoryFunctions(const void *context, UMemAllocFn *a, UMemReallocFn *r, UMemFreeFn *f, 
00248                     UErrorCode *status);
00249 #endif  /* U_HIDE_SYSTEM_API */
00250 
00251 #endif