]> git.ipfire.org Git - thirdparty/cups.git/blob - cups/transcode.h
Load cups into easysw/current.
[thirdparty/cups.git] / cups / transcode.h
1 /*
2 * "$Id: transcode.h 5294 2006-03-15 21:09:32Z mike $"
3 *
4 * Transcoding definitions for the Common UNIX Printing System (CUPS).
5 *
6 * Copyright 1997-2006 by Easy Software Products.
7 *
8 * These coded instructions, statements, and computer programs are
9 * the property of Easy Software Products and are protected by Federal
10 * copyright law. Distribution and use rights are outlined in the
11 * file "LICENSE.txt" which should have been included with this file.
12 * If this file is missing or damaged please contact Easy Software
13 * Products at:
14 *
15 * Attn: CUPS Licensing Information
16 * Easy Software Products
17 * 44141 Airport View Drive, Suite 204
18 * Hollywood, Maryland 20636 USA
19 *
20 * Voice: (301) 373-9600
21 * EMail: cups-info@cups.org
22 * WWW: http://www.cups.org
23 */
24
25 #ifndef _CUPS_TRANSCODE_H_
26 # define _CUPS_TRANSCODE_H_
27
28 /*
29 * Include necessary headers...
30 */
31
32 # include "language.h"
33
34 # ifdef __cplusplus
35 extern "C" {
36 # endif /* __cplusplus */
37
38
39 /*
40 * Constants...
41 */
42
43 # define CUPS_MAX_USTRING 8192 /* Max size of Unicode string */
44
45
46 /*
47 * Types...
48 */
49
50 typedef unsigned char cups_utf8_t; /* UTF-8 Unicode/ISO-10646 unit */
51 typedef unsigned long cups_utf32_t; /* UTF-32 Unicode/ISO-10646 unit */
52 typedef unsigned short cups_ucs2_t; /* UCS-2 Unicode/ISO-10646 unit */
53 typedef unsigned long cups_ucs4_t; /* UCS-4 Unicode/ISO-10646 unit */
54 typedef unsigned char cups_sbcs_t; /* SBCS Legacy 8-bit unit */
55 typedef unsigned short cups_dbcs_t; /* DBCS Legacy 16-bit unit */
56 typedef unsigned long cups_vbcs_t; /* VBCS Legacy 32-bit unit */
57 /* EUC uses 8, 16, 24, 32-bit */
58
59
60 /*
61 * Prototypes...
62 */
63
64 extern int cupsCharsetToUTF8(cups_utf8_t *dest,
65 const char *src,
66 const int maxout,
67 const cups_encoding_t encoding);
68 extern int cupsUTF8ToCharset(char *dest,
69 const cups_utf8_t *src,
70 const int maxout,
71 const cups_encoding_t encoding);
72 extern int cupsUTF8ToUTF32(cups_utf32_t *dest,
73 const cups_utf8_t *src,
74 const int maxout);
75 extern int cupsUTF32ToUTF8(cups_utf8_t *dest,
76 const cups_utf32_t *src,
77 const int maxout);
78
79 # ifdef __cplusplus
80 }
81 # endif /* __cplusplus */
82
83 #endif /* !_CUPS_TRANSCODE_H_ */
84
85
86 /*
87 * End of "$Id: transcode.h 5294 2006-03-15 21:09:32Z mike $"
88 */