00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef __ICU_UCNV_SEL_H__
00020 #define __ICU_UCNV_SEL_H__
00021
00022 #include "unicode/uset.h"
00023 #include "unicode/utypes.h"
00024 #include "unicode/utf16.h"
00025 #include "unicode/uenum.h"
00026 #include "unicode/ucnv.h"
00027
00028
00042 struct UConverterSelector;
00043 typedef struct UConverterSelector UConverterSelector;
00044
00045
00067 U_CAPI UConverterSelector* ucnvsel_open(const char* const* converterList,
00068 int32_t converterListSize,
00069 const USet* excludedCodePoints,
00070 const UConverterUnicodeSet whichSet,
00071 UErrorCode* status);
00072
00073
00087 U_CAPI void ucnvsel_close(UConverterSelector *sel);
00088
00106 U_CAPI UConverterSelector* ucnvsel_unserialize(const char* buffer,
00107 int32_t length,
00108 UErrorCode* status);
00109
00124 U_CAPI int32_t ucnvsel_serialize(const UConverterSelector* sel,
00125 char* buffer,
00126 int32_t bufferCapacity,
00127 UErrorCode* status);
00128
00145 U_CAPI UEnumeration *ucnvsel_selectForString(const UConverterSelector*, const UChar *s,
00146 int32_t length, UErrorCode *status);
00147
00165 U_CAPI UEnumeration *ucnvsel_selectForUTF8(const UConverterSelector*,
00166 const char *s,
00167 int32_t length,
00168 UErrorCode *status);
00169
00170
00171 #endif