| /* |
| * Transcoding definitions for CUPS. |
| * |
| * Copyright 2007-2011 by Apple Inc. |
| * Copyright 1997-2006 by Easy Software Products. |
| * |
| * These coded instructions, statements, and computer programs are the |
| * property of Apple Inc. and are protected by Federal copyright |
| * law. Distribution and use rights are outlined in the file "LICENSE.txt" |
| * which should have been included with this file. If this file is |
| * missing or damaged, see the license at "http://www.cups.org/". |
| * |
| * This file is subject to the Apple OS-Developed Software exception. |
| */ |
| |
| #ifndef _CUPS_TRANSCODE_H_ |
| # define _CUPS_TRANSCODE_H_ |
| |
| /* |
| * Include necessary headers... |
| */ |
| |
| # include "language.h" |
| |
| # ifdef __cplusplus |
| extern "C" { |
| # endif /* __cplusplus */ |
| |
| |
| /* |
| * Constants... |
| */ |
| |
| # define CUPS_MAX_USTRING 8192 /* Max size of Unicode string */ |
| |
| |
| /* |
| * Types... |
| */ |
| |
| typedef unsigned char cups_utf8_t; /* UTF-8 Unicode/ISO-10646 unit */ |
| typedef unsigned long cups_utf32_t; /* UTF-32 Unicode/ISO-10646 unit */ |
| typedef unsigned short cups_ucs2_t; /* UCS-2 Unicode/ISO-10646 unit */ |
| typedef unsigned long cups_ucs4_t; /* UCS-4 Unicode/ISO-10646 unit */ |
| typedef unsigned char cups_sbcs_t; /* SBCS Legacy 8-bit unit */ |
| typedef unsigned short cups_dbcs_t; /* DBCS Legacy 16-bit unit */ |
| typedef unsigned long cups_vbcs_t; /* VBCS Legacy 32-bit unit */ |
| /* EUC uses 8, 16, 24, 32-bit */ |
| |
| |
| /* |
| * Prototypes... |
| */ |
| |
| extern int cupsCharsetToUTF8(cups_utf8_t *dest, |
| const char *src, |
| const int maxout, |
| const cups_encoding_t encoding) _CUPS_API_1_2; |
| extern int cupsUTF8ToCharset(char *dest, |
| const cups_utf8_t *src, |
| const int maxout, |
| const cups_encoding_t encoding) _CUPS_API_1_2; |
| extern int cupsUTF8ToUTF32(cups_utf32_t *dest, |
| const cups_utf8_t *src, |
| const int maxout) _CUPS_API_1_2; |
| extern int cupsUTF32ToUTF8(cups_utf8_t *dest, |
| const cups_utf32_t *src, |
| const int maxout) _CUPS_API_1_2; |
| |
| # ifdef __cplusplus |
| } |
| # endif /* __cplusplus */ |
| |
| #endif /* !_CUPS_TRANSCODE_H_ */ |