90 #ifndef INCLUDED_CONVERT_UTF_H
91 # define INCLUDED_CONVERT_UTF_H
95 typedef unsigned long UTF32;
96 typedef unsigned short UTF16;
97 typedef unsigned char UTF8;
100 # include <INTEGRITY_types.h>
102 typedef unsigned char Boolean;
106 # define UNI_REPLACEMENT_CHAR (UTF32)0x0000FFFD
107 # define UNI_MAX_BMP (UTF32)0x0000FFFF
108 # define UNI_MAX_UTF16 (UTF32)0x0010FFFF
109 # define UNI_MAX_UTF32 (UTF32)0x7FFFFFFF
110 # define UNI_MAX_LEGAL_UTF32 (UTF32)0x0010FFFF
122 strictConversion = 0,
132 GLS_EXPORT ConversionResult ConvertUTF8toUTF16(
133 const UTF8** sourceStart,
const UTF8* sourceEnd,
134 UTF16** targetStart, UTF16* targetEnd, ConversionFlags flags );
136 GLS_EXPORT ConversionResult ConvertUTF16toUTF8(
137 const UTF16** sourceStart,
const UTF16* sourceEnd,
138 UTF8** targetStart, UTF8* targetEnd, ConversionFlags flags );
140 GLS_EXPORT ConversionResult ConvertUTF8toUTF32(
141 const UTF8** sourceStart,
const UTF8* sourceEnd,
142 UTF32** targetStart, UTF32* targetEnd, ConversionFlags flags );
144 GLS_EXPORT ConversionResult ConvertUTF32toUTF8(
145 const UTF32** sourceStart,
const UTF32* sourceEnd,
146 UTF8** targetStart, UTF8* targetEnd, ConversionFlags flags );
148 GLS_EXPORT ConversionResult ConvertUTF16toUTF32(
149 const UTF16** sourceStart,
const UTF16* sourceEnd,
150 UTF32** targetStart, UTF32* targetEnd, ConversionFlags flags );
152 GLS_EXPORT ConversionResult ConvertUTF32toUTF16(
153 const UTF32** sourceStart,
const UTF32* sourceEnd,
154 UTF16** targetStart, UTF16* targetEnd, ConversionFlags flags );
156 GLS_EXPORT Boolean isLegalUTF8Sequence(
const UTF8* source,
const UTF8* sourceEnd );
A file for all GL Studio files to include.