94 lines
2.1 KiB
C++
94 lines
2.1 KiB
C++
// © 2016 and later: Unicode, Inc. and others.
|
|
// License & terms of use: http://www.unicode.org/copyright.html
|
|
/*
|
|
******************************************************************************
|
|
*
|
|
* Copyright (C) 2009-2015, International Business Machines
|
|
* Corporation and others. All Rights Reserved.
|
|
*
|
|
******************************************************************************
|
|
*
|
|
* FILE NAME : icuplugimp.h
|
|
*
|
|
* Internal functions for the ICU plugin system
|
|
*
|
|
* Date Name Description
|
|
* 10/29/2009 sl New.
|
|
******************************************************************************
|
|
*/
|
|
|
|
|
|
#ifndef ICUPLUGIMP_H
|
|
#define ICUPLUGIMP_H
|
|
|
|
#include "unicode/icuplug.h"
|
|
|
|
#if UCONFIG_ENABLE_PLUGINS
|
|
|
|
/*========================*/
|
|
/** @{ Library Manipulation
|
|
*/
|
|
|
|
/**
|
|
* Open a library, adding a reference count if needed.
|
|
* @param libName library name to load
|
|
* @param status error code
|
|
* @return the library pointer, or NULL
|
|
* @internal internal use only
|
|
*/
|
|
U_CAPI void * U_EXPORT2
|
|
uplug_openLibrary(const char *libName, UErrorCode *status);
|
|
|
|
/**
|
|
* Close a library, if its reference count is 0
|
|
* @param lib the library to close
|
|
* @param status error code
|
|
* @internal internal use only
|
|
*/
|
|
U_CAPI void U_EXPORT2
|
|
uplug_closeLibrary(void *lib, UErrorCode *status);
|
|
|
|
/**
|
|
* Get a library's name, or NULL if not found.
|
|
* @param lib the library's name
|
|
* @param status error code
|
|
* @return the library name, or NULL if not found.
|
|
* @internal internal use only
|
|
*/
|
|
U_CAPI char * U_EXPORT2
|
|
uplug_findLibrary(void *lib, UErrorCode *status);
|
|
|
|
/** @} */
|
|
|
|
/*========================*/
|
|
/** {@ ICU Plugin internal interfaces
|
|
*/
|
|
|
|
/**
|
|
* Initialize the plugins
|
|
* @param status error result
|
|
* @internal - Internal use only.
|
|
*/
|
|
U_CAPI void U_EXPORT2
|
|
uplug_init(UErrorCode *status);
|
|
|
|
/**
|
|
* Get raw plug N
|
|
* @internal - Internal use only
|
|
*/
|
|
U_CAPI UPlugData* U_EXPORT2
|
|
uplug_getPlugInternal(int32_t n);
|
|
|
|
/**
|
|
* Get the name of the plugin file.
|
|
* @internal - Internal use only.
|
|
*/
|
|
U_CAPI const char* U_EXPORT2
|
|
uplug_getPluginFile(void);
|
|
|
|
/** @} */
|
|
|
|
#endif
|
|
|
|
#endif
|