ICU 50.1.2  50.1.2
ucsdet.h
Go to the documentation of this file.
1 /*
2  **********************************************************************
3  * Copyright (C) 2005-2010, International Business Machines
4  * Corporation and others. All Rights Reserved.
5  **********************************************************************
6  * file name: ucsdet.h
7  * encoding: US-ASCII
8  * indentation:4
9  *
10  * created on: 2005Aug04
11  * created by: Andy Heninger
12  *
13  * ICU Character Set Detection, API for C
14  *
15  * Draft version 18 Oct 2005
16  *
17  */
18 
19 #ifndef __UCSDET_H
20 #define __UCSDET_H
21 
22 #include "unicode/utypes.h"
23 
24 #if !UCONFIG_NO_CONVERSION
25 
26 #include "unicode/localpointer.h"
27 #include "unicode/uenum.h"
28 
49 struct UCharsetDetector;
55 
56 struct UCharsetMatch;
63 
72 U_STABLE UCharsetDetector * U_EXPORT2
73 ucsdet_open(UErrorCode *status);
74 
84 U_STABLE void U_EXPORT2
86 
87 #if U_SHOW_CPLUSPLUS_API
88 
90 
101 
103 
104 #endif
105 
121 U_STABLE void U_EXPORT2
122 ucsdet_setText(UCharsetDetector *ucsd, const char *textIn, int32_t len, UErrorCode *status);
123 
124 
143 U_STABLE void U_EXPORT2
144 ucsdet_setDeclaredEncoding(UCharsetDetector *ucsd, const char *encoding, int32_t length, UErrorCode *status);
145 
146 
172 U_STABLE const UCharsetMatch * U_EXPORT2
174 
175 
206 U_STABLE const UCharsetMatch ** U_EXPORT2
207 ucsdet_detectAll(UCharsetDetector *ucsd, int32_t *matchesFound, UErrorCode *status);
208 
209 
210 
226 U_STABLE const char * U_EXPORT2
227 ucsdet_getName(const UCharsetMatch *ucsm, UErrorCode *status);
228 
252 U_STABLE int32_t U_EXPORT2
253 ucsdet_getConfidence(const UCharsetMatch *ucsm, UErrorCode *status);
254 
284 U_STABLE const char * U_EXPORT2
285 ucsdet_getLanguage(const UCharsetMatch *ucsm, UErrorCode *status);
286 
287 
310 U_STABLE int32_t U_EXPORT2
311 ucsdet_getUChars(const UCharsetMatch *ucsm,
312  UChar *buf, int32_t cap, UErrorCode *status);
313 
314 
315 
335 U_STABLE UEnumeration * U_EXPORT2
337 
338 
349 U_STABLE UBool U_EXPORT2
351 
352 
364 U_STABLE UBool U_EXPORT2
366 
367 #endif
368 #endif /* __UCSDET_H */
369 
370 
UBool ucsdet_enableInputFilter(UCharsetDetector *ucsd, UBool filter)
Enable filtering of input text.
struct UEnumeration UEnumeration
structure representing an enumeration object instance
Definition: uenum.h:39
const char * ucsdet_getName(const UCharsetMatch *ucsm, UErrorCode *status)
Get the name of the charset represented by a UCharsetMatch.
void ucsdet_close(UCharsetDetector *ucsd)
Close a charset detector.
int32_t ucsdet_getUChars(const UCharsetMatch *ucsm, UChar *buf, int32_t cap, UErrorCode *status)
Get the entire input text as a UChar string, placing it into a caller-supplied buffer.
const UCharsetMatch * ucsdet_detect(UCharsetDetector *ucsd, UErrorCode *status)
Return the charset that best matches the supplied input data.
#define U_NAMESPACE_BEGIN
This is used to begin a declaration of a public ICU C++ API.
Definition: uversion.h:129
void ucsdet_setText(UCharsetDetector *ucsd, const char *textIn, int32_t len, UErrorCode *status)
Set the input byte data whose charset is to detected.
void ucsdet_setDeclaredEncoding(UCharsetDetector *ucsd, const char *encoding, int32_t length, UErrorCode *status)
Set the declared encoding for charset detection.
#define U_DEFINE_LOCAL_OPEN_POINTER(LocalPointerClassName, Type, closeFunction)
"Smart pointer" definition macro, deletes objects via the closeFunction.
Definition: localpointer.h:290
C++ API: "Smart pointers" for use with and in ICU4C C++ code.
struct UCharsetDetector UCharsetDetector
Structure representing a charset detector.
Definition: ucsdet.h:54
"Smart pointer" class, closes a UCharsetDetector via ucsdet_close().
uint16_t UChar
Define UChar to be UCHAR_TYPE, if that is #defined (for example, to char16_t), or wchar_t if that is ...
Definition: umachine.h:278
#define U_NAMESPACE_END
This is used to end a declaration of a public ICU C++ API.
Definition: uversion.h:130
const UCharsetMatch ** ucsdet_detectAll(UCharsetDetector *ucsd, int32_t *matchesFound, UErrorCode *status)
Find all charset matches that appear to be consistent with the input, returning an array of results...
UEnumeration * ucsdet_getAllDetectableCharsets(const UCharsetDetector *ucsd, UErrorCode *status)
Get an iterator over the set of all detectable charsets - over the charsets that are known to the cha...
UErrorCode
Error code to replace exception handling, so that the code is compatible with all C++ compilers...
Definition: utypes.h:476
UCharsetDetector * ucsdet_open(UErrorCode *status)
Open a charset detector.
C API: String Enumeration.
int32_t ucsdet_getConfidence(const UCharsetMatch *ucsm, UErrorCode *status)
Get a confidence number for the quality of the match of the byte data with the charset.
Basic definitions for ICU, for both C and C++ APIs.
UBool ucsdet_isInputFilterEnabled(const UCharsetDetector *ucsd)
Test whether input filtering is enabled for this charset detector.
const char * ucsdet_getLanguage(const UCharsetMatch *ucsm, UErrorCode *status)
Get the RFC 3066 code for the language of the input data.
struct UCharsetMatch UCharsetMatch
Opaque structure representing a match that was identified from a charset detection operation...
Definition: ucsdet.h:62
#define U_STABLE
This is used to declare a function as a stable public ICU C API.
Definition: umachine.h:109
int8_t UBool
The ICU boolean type.
Definition: umachine.h:200