|
1 /* |
|
2 ****************************************************************************** |
|
3 * |
|
4 * Copyright (C) 2009-2010, International Business Machines |
|
5 * Corporation and others. All Rights Reserved. |
|
6 * |
|
7 ****************************************************************************** |
|
8 * |
|
9 * FILE NAME : icuplugimp.h |
|
10 * |
|
11 * Internal functions for the ICU plugin system |
|
12 * |
|
13 * Date Name Description |
|
14 * 10/29/2009 sl New. |
|
15 ****************************************************************************** |
|
16 */ |
|
17 |
|
18 |
|
19 #ifndef ICUPLUGIMP_H |
|
20 #define ICUPLUGIMP_H |
|
21 |
|
22 #include "unicode/icuplug.h" |
|
23 |
|
24 /*========================*/ |
|
25 /** @{ Library Manipulation |
|
26 */ |
|
27 |
|
28 /** |
|
29 * Open a library, adding a reference count if needed. |
|
30 * @param libName library name to load |
|
31 * @param status error code |
|
32 * @return the library pointer, or NULL |
|
33 * @internal internal use only |
|
34 */ |
|
35 U_INTERNAL void * U_EXPORT2 |
|
36 uplug_openLibrary(const char *libName, UErrorCode *status); |
|
37 |
|
38 /** |
|
39 * Close a library, if its reference count is 0 |
|
40 * @param lib the library to close |
|
41 * @param status error code |
|
42 * @internal internal use only |
|
43 */ |
|
44 U_INTERNAL void U_EXPORT2 |
|
45 uplug_closeLibrary(void *lib, UErrorCode *status); |
|
46 |
|
47 /** |
|
48 * Get a library's name, or NULL if not found. |
|
49 * @param lib the library's name |
|
50 * @param status error code |
|
51 * @return the library name, or NULL if not found. |
|
52 * @internal internal use only |
|
53 */ |
|
54 U_INTERNAL char * U_EXPORT2 |
|
55 uplug_findLibrary(void *lib, UErrorCode *status); |
|
56 |
|
57 /** @} */ |
|
58 |
|
59 /*========================*/ |
|
60 /** {@ ICU Plugin internal interfaces |
|
61 */ |
|
62 |
|
63 /** |
|
64 * Initialize the plugins |
|
65 * @param status error result |
|
66 * @internal - Internal use only. |
|
67 */ |
|
68 U_INTERNAL void U_EXPORT2 |
|
69 uplug_init(UErrorCode *status); |
|
70 |
|
71 /** |
|
72 * Get raw plug N |
|
73 * @internal - Internal use only |
|
74 */ |
|
75 U_INTERNAL UPlugData* U_EXPORT2 |
|
76 uplug_getPlugInternal(int32_t n); |
|
77 |
|
78 /** |
|
79 * Get the name of the plugin file. |
|
80 * @internal - Internal use only. |
|
81 */ |
|
82 U_INTERNAL const char* U_EXPORT2 |
|
83 uplug_getPluginFile(void); |
|
84 |
|
85 /** @} */ |
|
86 |
|
87 #endif |