ICU 56.1
56.1
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
common
unicode
icuplug.h
Go to the documentation of this file.
1
/*
2
******************************************************************************
3
*
4
* Copyright (C) 2009-2015, International Business Machines
5
* Corporation and others. All Rights Reserved.
6
*
7
******************************************************************************
8
*
9
* FILE NAME : icuplug.h
10
*
11
* Date Name Description
12
* 10/29/2009 sl New.
13
******************************************************************************
14
*/
15
105
#ifndef ICUPLUG_H
106
#define ICUPLUG_H
107
108
#include "
unicode/utypes.h
"
109
110
111
#if UCONFIG_ENABLE_PLUGINS
112
113
114
115
/* === Basic types === */
116
117
#ifndef U_HIDE_INTERNAL_API
118
125
struct
UPlugData;
126
typedef
struct
UPlugData UPlugData;
127
135
#define UPLUG_TOKEN 0x54762486
136
141
#define UPLUG_NAME_MAX 100
142
143
150
typedef
uint32_t
UPlugTokenReturn
;
151
156
typedef
enum
{
157
UPLUG_REASON_QUERY
= 0,
158
UPLUG_REASON_LOAD
= 1,
159
UPLUG_REASON_UNLOAD
= 2,
160
UPLUG_REASON_COUNT
161
}
UPlugReason
;
162
163
171
typedef
enum
{
172
UPLUG_LEVEL_INVALID
= 0,
173
UPLUG_LEVEL_UNKNOWN
= 1,
174
UPLUG_LEVEL_LOW
= 2,
175
UPLUG_LEVEL_HIGH
= 3,
176
UPLUG_LEVEL_COUNT
177
}
UPlugLevel
;
178
186
typedef
UPlugTokenReturn
(U_EXPORT2
UPlugEntrypoint
) (
187
UPlugData *plug,
188
UPlugReason
reason,
189
UErrorCode
*status);
190
191
/* === Needed for Implementing === */
192
201
U_INTERNAL
void
U_EXPORT2
202
uplug_setPlugNoUnload
(UPlugData *plug,
UBool
dontUnload);
203
210
U_INTERNAL
void
U_EXPORT2
211
uplug_setPlugLevel
(UPlugData *plug,
UPlugLevel
level);
212
219
U_INTERNAL
UPlugLevel
U_EXPORT2
220
uplug_getPlugLevel
(UPlugData *plug);
221
229
U_INTERNAL
UPlugLevel
U_EXPORT2
230
uplug_getCurrentLevel
(
void
);
231
232
238
U_INTERNAL
UErrorCode
U_EXPORT2
239
uplug_getPlugLoadStatus
(UPlugData *plug);
240
247
U_INTERNAL
void
U_EXPORT2
248
uplug_setPlugName
(UPlugData *plug,
const
char
*name);
249
256
U_INTERNAL
const
char
* U_EXPORT2
257
uplug_getPlugName
(UPlugData *plug);
258
265
U_INTERNAL
const
char
* U_EXPORT2
266
uplug_getSymbolName
(UPlugData *plug);
267
275
U_INTERNAL
const
char
* U_EXPORT2
276
uplug_getLibraryName
(UPlugData *plug,
UErrorCode
*status);
277
285
U_INTERNAL
void
* U_EXPORT2
286
uplug_getLibrary
(UPlugData *plug);
287
294
U_INTERNAL
void
* U_EXPORT2
295
uplug_getContext
(UPlugData *plug);
296
303
U_INTERNAL
void
U_EXPORT2
304
uplug_setContext
(UPlugData *plug,
void
*context);
305
306
314
U_INTERNAL
const
char
* U_EXPORT2
315
uplug_getConfiguration
(UPlugData *plug);
316
332
U_INTERNAL
UPlugData* U_EXPORT2
333
uplug_nextPlug
(UPlugData *prior);
334
347
U_INTERNAL
UPlugData* U_EXPORT2
348
uplug_loadPlugFromEntrypoint
(
UPlugEntrypoint
*entrypoint,
const
char
*config,
UErrorCode
*status);
349
350
361
U_INTERNAL
UPlugData* U_EXPORT2
362
uplug_loadPlugFromLibrary
(
const
char
*libName,
const
char
*sym,
const
char
*config,
UErrorCode
*status);
363
371
U_INTERNAL
void
U_EXPORT2
372
uplug_removePlug
(UPlugData *plug,
UErrorCode
*status);
373
#endif
/* U_HIDE_INTERNAL_API */
374
375
#endif
/* UCONFIG_ENABLE_PLUGINS */
376
377
#endif
/* _ICUPLUG */
378
Generated on Wed Oct 7 2015 21:17:56 for ICU 56.1 by
1.8.1.2