ICU 50.1.2  50.1.2
uclean.h
Go to the documentation of this file.
1 /*
2 ******************************************************************************
3 * Copyright (C) 2001-2012, International Business Machines
4 * Corporation and others. All Rights Reserved.
5 ******************************************************************************
6 * file name: uclean.h
7 * encoding: US-ASCII
8 * tab size: 8 (not used)
9 * indentation:4
10 *
11 * created on: 2001July05
12 * created by: George Rhoten
13 */
14 
15 #ifndef __UCLEAN_H__
16 #define __UCLEAN_H__
17 
18 #include "unicode/utypes.h"
50 U_STABLE void U_EXPORT2
51 u_init(UErrorCode *status);
52 
53 #ifndef U_HIDE_SYSTEM_API
54 
99 U_STABLE void U_EXPORT2
100 u_cleanup(void);
101 
102 
103 
104 
112 typedef void *UMTX;
113 
130 typedef void U_CALLCONV UMtxInitFn (const void *context, UMTX *mutex, UErrorCode* status);
131 
132 
142 typedef void U_CALLCONV UMtxFn (const void *context, UMTX *mutex);
143 
144 
162 U_STABLE void U_EXPORT2
163 u_setMutexFunctions(const void *context, UMtxInitFn *init, UMtxFn *destroy, UMtxFn *lock, UMtxFn *unlock,
164  UErrorCode *status);
165 
166 
175 typedef int32_t U_CALLCONV UMtxAtomicFn(const void *context, int32_t *p);
176 
192 U_STABLE void U_EXPORT2
193 u_setAtomicIncDecFunctions(const void *context, UMtxAtomicFn *inc, UMtxAtomicFn *dec,
194  UErrorCode *status);
195 
196 
197 
206 typedef void *U_CALLCONV UMemAllocFn(const void *context, size_t size);
215 typedef void *U_CALLCONV UMemReallocFn(const void *context, void *mem, size_t size);
226 typedef void U_CALLCONV UMemFreeFn (const void *context, void *mem);
227 
244 U_STABLE void U_EXPORT2
245 u_setMemoryFunctions(const void *context, UMemAllocFn *a, UMemReallocFn *r, UMemFreeFn *f,
246  UErrorCode *status);
247 #endif /* U_HIDE_SYSTEM_API */
248 
249 #endif
void * UMemReallocFn(const void *context, void *mem, size_t size)
Pointer type for a user supplied memory re-allocation function.
Definition: uclean.h:215
void * UMemAllocFn(const void *context, size_t size)
Pointer type for a user supplied memory allocation function.
Definition: uclean.h:206
#define U_CALLCONV
Similar to U_CDECL_BEGIN/U_CDECL_END, this qualifier is necessary in callback function typedefs to ma...
Definition: platform.h:752
void u_setAtomicIncDecFunctions(const void *context, UMtxAtomicFn *inc, UMtxAtomicFn *dec, UErrorCode *status)
Set the functions that ICU will use for atomic increment and decrement of int32_t values...
void u_setMutexFunctions(const void *context, UMtxInitFn *init, UMtxFn *destroy, UMtxFn *lock, UMtxFn *unlock, UErrorCode *status)
Set the functions that ICU will use for mutex operations Use of this function is optional; by default...
void u_cleanup(void)
Clean up the system resources, such as allocated memory or open files, used in all ICU libraries...
void UMtxFn(const void *context, UMTX *mutex)
Function Pointer type for a user supplied mutex functions.
Definition: uclean.h:142
int32_t UMtxAtomicFn(const void *context, int32_t *p)
Pointer type for a user supplied atomic increment or decrement function.
Definition: uclean.h:175
UErrorCode
Error code to replace exception handling, so that the code is compatible with all C++ compilers...
Definition: utypes.h:476
void UMemFreeFn(const void *context, void *mem)
Pointer type for a user supplied memory free function.
Definition: uclean.h:226
Basic definitions for ICU, for both C and C++ APIs.
void u_setMemoryFunctions(const void *context, UMemAllocFn *a, UMemReallocFn *r, UMemFreeFn *f, UErrorCode *status)
Set the functions that ICU will use for memory allocation.
void u_init(UErrorCode *status)
Initialize ICU.
#define U_STABLE
This is used to declare a function as a stable public ICU C API.
Definition: umachine.h:109
void * UMTX
An opaque pointer type that represents an ICU mutex.
Definition: uclean.h:112
void UMtxInitFn(const void *context, UMTX *mutex, UErrorCode *status)
Function Pointer type for a user supplied mutex initialization function.
Definition: uclean.h:130