diff options
Diffstat (limited to 'Build/source/libs/icu/icu-xetex/i18n/csrucode.h')
-rw-r--r-- | Build/source/libs/icu/icu-xetex/i18n/csrucode.h | 106 |
1 files changed, 106 insertions, 0 deletions
diff --git a/Build/source/libs/icu/icu-xetex/i18n/csrucode.h b/Build/source/libs/icu/icu-xetex/i18n/csrucode.h new file mode 100644 index 00000000000..315bad6b25e --- /dev/null +++ b/Build/source/libs/icu/icu-xetex/i18n/csrucode.h @@ -0,0 +1,106 @@ +/* + ********************************************************************** + * Copyright (C) 2005-2006, International Business Machines + * Corporation and others. All Rights Reserved. + ********************************************************************** + */ + +#ifndef __CSRUCODE_H +#define __CSRUCODE_H + +#include "unicode/utypes.h" + +#if !UCONFIG_NO_CONVERSION + +#include "csrecog.h" + +U_NAMESPACE_BEGIN + +/** + * This class matches UTF-16 and UTF-32, both big- and little-endian. The + * BOM will be used if it is present. + * + * @internal + */ +class CharsetRecog_Unicode : public CharsetRecognizer +{ + +public: + + virtual ~CharsetRecog_Unicode(); + /* (non-Javadoc) + * @see com.ibm.icu.text.CharsetRecognizer#getName() + */ + const char* getName() const = 0; + + /* (non-Javadoc) + * @see com.ibm.icu.text.CharsetRecognizer#match(com.ibm.icu.text.CharsetDetector) + */ + int32_t match(InputText* textIn) = 0; +}; + + +class CharsetRecog_UTF_16_BE : public CharsetRecog_Unicode +{ +public: + + virtual ~CharsetRecog_UTF_16_BE(); + + const char *getName() const; + + int32_t match(InputText* textIn); +}; + +class CharsetRecog_UTF_16_LE : public CharsetRecog_Unicode +{ +public: + + virtual ~CharsetRecog_UTF_16_LE(); + + const char *getName() const; + + int32_t match(InputText* textIn); +}; + +class CharsetRecog_UTF_32 : public CharsetRecog_Unicode +{ +protected: + virtual int32_t getChar(const uint8_t *input, int32_t index) const = 0; +public: + + virtual ~CharsetRecog_UTF_32(); + + const char* getName() const = 0; + + int32_t match(InputText* textIn); +}; + + +class CharsetRecog_UTF_32_BE : public CharsetRecog_UTF_32 +{ +protected: + int32_t getChar(const uint8_t *input, int32_t index) const; + +public: + + virtual ~CharsetRecog_UTF_32_BE(); + + const char *getName() const; +}; + + +class CharsetRecog_UTF_32_LE : public CharsetRecog_UTF_32 +{ +protected: + int32_t getChar(const uint8_t *input, int32_t index) const; + +public: + virtual ~CharsetRecog_UTF_32_LE(); + + const char* getName() const; +}; + +U_NAMESPACE_END + +#endif +#endif /* __CSRUCODE_H */ |