]>
Commit | Line | Data |
---|---|---|
ef416fc2 | 1 | /* |
503b54c9 | 2 | * Transcoding definitions for CUPS. |
ef416fc2 | 3 | * |
503b54c9 MS |
4 | * Copyright 2007-2011 by Apple Inc. |
5 | * Copyright 1997-2006 by Easy Software Products. | |
ef416fc2 | 6 | * |
503b54c9 MS |
7 | * These coded instructions, statements, and computer programs are the |
8 | * property of Apple Inc. and are protected by Federal copyright | |
9 | * law. Distribution and use rights are outlined in the file "LICENSE.txt" | |
10 | * which should have been included with this file. If this file is | |
57b7b66b | 11 | * missing or damaged, see the license at "http://www.cups.org/". |
ef416fc2 | 12 | * |
503b54c9 | 13 | * This file is subject to the Apple OS-Developed Software exception. |
ef416fc2 | 14 | */ |
15 | ||
16 | #ifndef _CUPS_TRANSCODE_H_ | |
17 | # define _CUPS_TRANSCODE_H_ | |
18 | ||
19 | /* | |
20 | * Include necessary headers... | |
21 | */ | |
22 | ||
23 | # include "language.h" | |
24 | ||
25 | # ifdef __cplusplus | |
26 | extern "C" { | |
27 | # endif /* __cplusplus */ | |
28 | ||
29 | ||
ef416fc2 | 30 | /* |
31 | * Constants... | |
32 | */ | |
33 | ||
e1d6a774 | 34 | # define CUPS_MAX_USTRING 8192 /* Max size of Unicode string */ |
ef416fc2 | 35 | |
36 | ||
37 | /* | |
e1d6a774 | 38 | * Types... |
ef416fc2 | 39 | */ |
40 | ||
e1d6a774 | 41 | typedef unsigned char cups_utf8_t; /* UTF-8 Unicode/ISO-10646 unit */ |
42 | typedef unsigned long cups_utf32_t; /* UTF-32 Unicode/ISO-10646 unit */ | |
43 | typedef unsigned short cups_ucs2_t; /* UCS-2 Unicode/ISO-10646 unit */ | |
44 | typedef unsigned long cups_ucs4_t; /* UCS-4 Unicode/ISO-10646 unit */ | |
45 | typedef unsigned char cups_sbcs_t; /* SBCS Legacy 8-bit unit */ | |
46 | typedef unsigned short cups_dbcs_t; /* DBCS Legacy 16-bit unit */ | |
47 | typedef unsigned long cups_vbcs_t; /* VBCS Legacy 32-bit unit */ | |
48 | /* EUC uses 8, 16, 24, 32-bit */ | |
ef416fc2 | 49 | |
ef416fc2 | 50 | |
51 | /* | |
e1d6a774 | 52 | * Prototypes... |
ef416fc2 | 53 | */ |
ef416fc2 | 54 | |
e1d6a774 | 55 | extern int cupsCharsetToUTF8(cups_utf8_t *dest, |
56 | const char *src, | |
57 | const int maxout, | |
2fb76298 | 58 | const cups_encoding_t encoding) _CUPS_API_1_2; |
e1d6a774 | 59 | extern int cupsUTF8ToCharset(char *dest, |
60 | const cups_utf8_t *src, | |
61 | const int maxout, | |
2fb76298 | 62 | const cups_encoding_t encoding) _CUPS_API_1_2; |
e1d6a774 | 63 | extern int cupsUTF8ToUTF32(cups_utf32_t *dest, |
64 | const cups_utf8_t *src, | |
2fb76298 | 65 | const int maxout) _CUPS_API_1_2; |
e1d6a774 | 66 | extern int cupsUTF32ToUTF8(cups_utf8_t *dest, |
67 | const cups_utf32_t *src, | |
2fb76298 | 68 | const int maxout) _CUPS_API_1_2; |
ef416fc2 | 69 | |
70 | # ifdef __cplusplus | |
71 | } | |
72 | # endif /* __cplusplus */ | |
73 | ||
74 | #endif /* !_CUPS_TRANSCODE_H_ */ |