* Rewrote headers as necessary; only Errors.h and Debug.h still originate from a Be header now;
feel free to change that ;-) * Cleaned up existing headers. * Coding style guide update to BBufferIO (renamed m_* members to f*). git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19972 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
+44
-55
@@ -1,70 +1,59 @@
|
||||
/******************************************************************************
|
||||
/
|
||||
/ File: UTF8.h
|
||||
/
|
||||
/ Description: UTF-8 conversion functions.
|
||||
/
|
||||
/ Copyright 1993-98, Be Incorporated
|
||||
/
|
||||
******************************************************************************/
|
||||
|
||||
|
||||
/*
|
||||
* Copyright 2007, Haiku, Inc. All Rights Reserved.
|
||||
* Distributed under the terms of the MIT License.
|
||||
*/
|
||||
#ifndef _UTF8_H
|
||||
#define _UTF8_H
|
||||
|
||||
|
||||
#include <BeBuild.h>
|
||||
#include <InterfaceDefs.h>
|
||||
#include <SupportDefs.h>
|
||||
|
||||
/*------------------------------------------------------------*/
|
||||
/*------- Conversion Flavors ---------------------------------*/
|
||||
|
||||
// Conversion Flavors
|
||||
enum {
|
||||
B_ISO1_CONVERSION, /* ISO 8859-1 */
|
||||
B_ISO2_CONVERSION, /* ISO 8859-2 */
|
||||
B_ISO3_CONVERSION, /* ISO 8859-3 */
|
||||
B_ISO4_CONVERSION, /* ISO 8859-4 */
|
||||
B_ISO5_CONVERSION, /* ISO 8859-5 */
|
||||
B_ISO6_CONVERSION, /* ISO 8859-6 */
|
||||
B_ISO7_CONVERSION, /* ISO 8859-7 */
|
||||
B_ISO8_CONVERSION, /* ISO 8859-8 */
|
||||
B_ISO9_CONVERSION, /* ISO 8859-9 */
|
||||
B_ISO10_CONVERSION, /* ISO 8859-10 */
|
||||
B_MAC_ROMAN_CONVERSION, /* Macintosh Roman */
|
||||
B_SJIS_CONVERSION, /* Shift-JIS */
|
||||
B_EUC_CONVERSION, /* EUC Packed Japanese */
|
||||
B_JIS_CONVERSION, /* JIS X 0208-1990 */
|
||||
B_MS_WINDOWS_CONVERSION, /* MS-Windows Codepage 1252 */
|
||||
B_UNICODE_CONVERSION, /* Unicode 2.0 */
|
||||
B_KOI8R_CONVERSION, /* KOI8-R */
|
||||
B_MS_WINDOWS_1251_CONVERSION, /* MS-Windows Codepage 1251 */
|
||||
B_MS_DOS_866_CONVERSION, /* MS-DOS Codepage 866 */
|
||||
B_MS_DOS_CONVERSION, /* MS-DOS Codepage 437 */
|
||||
B_EUC_KR_CONVERSION, /* EUC Korean */
|
||||
B_ISO13_CONVERSION, /* ISO 8859-13 */
|
||||
B_ISO14_CONVERSION, /* ISO 8859-14 */
|
||||
B_ISO15_CONVERSION, /* ISO 8859-15 */
|
||||
B_ISO1_CONVERSION, // ISO 8859-x
|
||||
B_ISO2_CONVERSION,
|
||||
B_ISO3_CONVERSION,
|
||||
B_ISO4_CONVERSION,
|
||||
B_ISO5_CONVERSION,
|
||||
B_ISO6_CONVERSION,
|
||||
B_ISO7_CONVERSION,
|
||||
B_ISO8_CONVERSION,
|
||||
B_ISO9_CONVERSION,
|
||||
B_ISO10_CONVERSION,
|
||||
B_MAC_ROMAN_CONVERSION, // Macintosh Roman
|
||||
B_SJIS_CONVERSION, // Shift-JIS
|
||||
B_EUC_CONVERSION, // EUC Packed Japanese
|
||||
B_JIS_CONVERSION, // JIS X 0208-1990
|
||||
B_MS_WINDOWS_CONVERSION, // Windows Latin-1 Codepage 1252
|
||||
B_UNICODE_CONVERSION, // Unicode 2.0, UCS-2
|
||||
B_KOI8R_CONVERSION, // KOI8-R
|
||||
B_MS_WINDOWS_1251_CONVERSION, // Windows Cyrillic Codepage 1251
|
||||
B_MS_DOS_866_CONVERSION, // MS-DOS Codepage 866
|
||||
B_MS_DOS_CONVERSION, // MS-DOS Codepage 437
|
||||
B_EUC_KR_CONVERSION, // EUC Korean
|
||||
B_ISO13_CONVERSION,
|
||||
B_ISO14_CONVERSION,
|
||||
B_ISO15_CONVERSION,
|
||||
B_BIG5_CONVERSION, // Chinese Big5
|
||||
B_GBK_CONVERSION, // Chinese GB18030
|
||||
};
|
||||
|
||||
/*-------------------------------------------------------------*/
|
||||
/*------- Conversion Functions --------------------------------*/
|
||||
|
||||
_IMPEXP_TEXTENCODING status_t convert_to_utf8(uint32 srcEncoding,
|
||||
const char *src,
|
||||
int32 *srcLen,
|
||||
char *dst,
|
||||
int32 *dstLen,
|
||||
int32 *state,
|
||||
char substitute = B_SUBSTITUTE);
|
||||
// Conversion Functions
|
||||
|
||||
_IMPEXP_TEXTENCODING status_t convert_from_utf8(uint32 dstEncoding,
|
||||
const char *src,
|
||||
int32 *srcLen,
|
||||
char *dst,
|
||||
int32 *dstLen,
|
||||
int32 *state,
|
||||
char substitute = B_SUBSTITUTE);
|
||||
#ifdef __cplusplus
|
||||
|
||||
/*-------------------------------------------------------------*/
|
||||
/*-------------------------------------------------------------*/
|
||||
status_t convert_to_utf8(uint32 sourceEncoding, const char* source,
|
||||
int32* sourceLength, char* dest, int32* destLength, int32* state,
|
||||
char substitute = B_SUBSTITUTE);
|
||||
|
||||
status_t convert_from_utf8(uint32 destEncoding, const char* source,
|
||||
int32* sourceLength, char* dest, int32* destLength, int32* state,
|
||||
char substitute = B_SUBSTITUTE);
|
||||
|
||||
#endif
|
||||
|
||||
#endif /* _UTF8_H */
|
||||
|
||||
Reference in New Issue
Block a user