X-Git-Url: http://mj.ucw.cz/gitweb/?a=blobdiff_plain;f=charset%2Fcharconv.h;h=808e661358f6218b3241d0cf5d72ce9a939d2474;hb=3ea54a36438924d1e7d0d66b864be846a079acf8;hp=14fee079ac02fea498c077bffcc55934c4a165e6;hpb=5451cada955bd952f5c732857e27ed676e873aa1;p=libucw.git diff --git a/charset/charconv.h b/charset/charconv.h index 14fee079..808e6613 100644 --- a/charset/charconv.h +++ b/charset/charconv.h @@ -1,10 +1,10 @@ /* - * Character Set Conversion Library 1.0 + * Character Set Conversion Library 1.1 * - * (c) 1998 Martin Mares + * (c) 1998--2001 Martin Mares * * This software may be freely distributed and used according to the terms - * of the GNU General Public License. See file COPYING in any of the GNU packages. + * of the GNU Lesser General Public License. */ struct conv_context { @@ -33,11 +33,40 @@ void conv_set_charset(struct conv_context *, int, int); #define CONV_DEST_END 2 #define CONV_SKIP 4 -#define CONV_CHARSET_ASCII 0 -#define CONV_CHARSET_LATIN1 1 -#define CONV_CHARSET_LATIN2 2 -#define CONV_CHARSET_UTF8 8 -#define CONV_NUM_CHARSETS 9 +enum charset_id { + CONV_CHARSET_ASCII, + CONV_CHARSET_ISO_8859_1, + CONV_CHARSET_ISO_8859_2, + CONV_CHARSET_ISO_8859_3, + CONV_CHARSET_ISO_8859_4, + CONV_CHARSET_ISO_8859_5, + CONV_CHARSET_ISO_8859_6, + CONV_CHARSET_ISO_8859_7, + CONV_CHARSET_ISO_8859_8, + CONV_CHARSET_ISO_8859_9, + CONV_CHARSET_ISO_8859_10, + CONV_CHARSET_ISO_8859_11, + CONV_CHARSET_ISO_8859_13, + CONV_CHARSET_ISO_8859_14, + CONV_CHARSET_ISO_8859_15, + CONV_CHARSET_ISO_8859_16, + CONV_CHARSET_WIN1250, + CONV_CHARSET_WIN1252, + CONV_CHARSET_KAMCS, + CONV_CHARSET_CSN369103, + CONV_CHARSET_CP852, + CONV_CHARSET_MACCE, + CONV_CHARSET_CORK, + CONV_CHARSET_UTF8, + CONV_NUM_CHARSETS +}; + +/* For those brave ones who want to mess with charconv internals */ +unsigned int conv_x_to_ucs(unsigned int x); +unsigned int conv_ucs_to_x(unsigned int ucs); +unsigned int conv_x_count(void); + +/* Charset names */ int find_charset_by_name(char *); char *charset_name(int);