113 #if UCONFIG_ENABLE_PLUGINS || defined(U_IN_DOXYGEN) 119 #ifndef U_HIDE_INTERNAL_API 128 typedef struct UPlugData UPlugData;
137 #define UPLUG_TOKEN 0x54762486 143 #define UPLUG_NAME_MAX 100 The plugin is waiting to be installed.
void * uplug_getLibrary(UPlugData *plug)
Return the library used for this plugin, if known.
const char * uplug_getSymbolName(UPlugData *plug)
Return the symbol name for this plugin, if known.
The plugin is invalid, hasn't called uplug_setLevel, or can't load.
UPlugData * uplug_nextPlug(UPlugData *prior)
Return all currently installed plugins, from newest to oldest Usage Example:
UPlugReason
Reason code for the entrypoint's call.
#define U_INTERNAL
This is used to declare a function as an internal ICU C API.
void uplug_setPlugName(UPlugData *plug, const char *name)
Set the human-readable name of this plugin.
uint32_t UPlugTokenReturn
Return value from a plugin entrypoint.
UErrorCode uplug_getPlugLoadStatus(UPlugData *plug)
Get plug load status.
The plugin can run at any time.
The plugin must be called before u_init completes.
UPlugData * uplug_loadPlugFromLibrary(const char *libName, const char *sym, const char *config, UErrorCode *status)
Inject a plugin from a library, as if the information came from a config file.
const char * uplug_getConfiguration(UPlugData *plug)
Get the configuration string, if available.
UPlugData * uplug_loadPlugFromEntrypoint(UPlugEntrypoint *entrypoint, const char *config, UErrorCode *status)
Inject a plugin as if it were loaded from a library.
void uplug_setPlugLevel(UPlugData *plug, UPlugLevel level)
Set the level of this plugin.
UPlugLevel
Level of plugin loading INITIAL: UNKNOWN QUERY: INVALID -> { LOW | HIGH } ERR -> INVALID.
void * uplug_getContext(UPlugData *plug)
Return the plugin-specific context data.
UPlugLevel uplug_getCurrentLevel(void)
Get the lowest level of plug which can currently load.
The plugin is being unloaded.
UPlugLevel uplug_getPlugLevel(UPlugData *plug)
Get the level of this plugin.
UPlugTokenReturn() UPlugEntrypoint(UPlugData *plug, UPlugReason reason, UErrorCode *status)
Entrypoint for an ICU plugin.
void uplug_setPlugNoUnload(UPlugData *plug, UBool dontUnload)
Request that this plugin not be unloaded at cleanup time.
UErrorCode
Error code to replace exception handling, so that the code is compatible with all C++ compilers...
const char * uplug_getPlugName(UPlugData *plug)
Get the human-readable name of this plugin.
void uplug_removePlug(UPlugData *plug, UErrorCode *status)
Remove a plugin.
The plugin is being loaded.
void uplug_setContext(UPlugData *plug, void *context)
Set the plugin-specific context data.
The plugin is being queried for info.
Basic definitions for ICU, for both C and C++ APIs.
const char * uplug_getLibraryName(UPlugData *plug, UErrorCode *status)
Return the library name for this plugin, if known.
int8_t UBool
The ICU boolean type.