X-Git-Url: http://mj.ucw.cz/gitweb/?a=blobdiff_plain;ds=sidebyside;f=charset%2Fcharconv.h;h=bec228f24b63123e67b64e53056c224f0f0b0603;hb=1bc3bb66e47ec02003658fb3040aef0ffd7b7540;hp=d14493c16b8c241f27aa90280e15865cc2dd8024;hpb=7af80cdb684884505ceeb2d71414b2b9c24ab02b;p=libucw.git diff --git a/charset/charconv.h b/charset/charconv.h index d14493c1..bec228f2 100644 --- a/charset/charconv.h +++ b/charset/charconv.h @@ -2,13 +2,26 @@ * Character Set Conversion Library 1.2 * * (c) 1998--2005 Martin Mares + * (c) 2007 Pavel Charvat * * This software may be freely distributed and used according to the terms * of the GNU Lesser General Public License. */ -#ifndef _CHARCONV_H -#define _CHARCONV_H +#ifndef _CHARSET_CHARCONV_H +#define _CHARSET_CHARCONV_H + +#ifdef CONFIG_UCW_CLEAN_ABI +#define charset_name ucw_charset_name +#define conv_in_to_ucs ucw_conv_in_to_ucs +#define conv_init ucw_conv_init +#define conv_set_charset ucw_conv_set_charset +#define conv_ucs_to_out ucw_conv_ucs_to_out +#define conv_ucs_to_x ucw_conv_ucs_to_x +#define conv_x_count ucw_conv_x_count +#define conv_x_to_ucs ucw_conv_x_to_ucs +#define find_charset_by_name ucw_find_charset_by_name +#endif struct conv_context { @@ -26,7 +39,7 @@ struct conv_context { int source_charset, dest_charset; unsigned short int *in_to_x; unsigned short int *x_to_out; - unsigned int state, code, remains; + uint state, code, remains; unsigned char *string_at; }; @@ -64,21 +77,23 @@ enum charset_id { CONV_CHARSET_MACCE, CONV_CHARSET_CORK, CONV_CHARSET_UTF8, + CONV_CHARSET_UTF16_BE, + CONV_CHARSET_UTF16_LE, CONV_NUM_CHARSETS }; /* Conversion of a single character between current non-UTF8 charset and Unicode */ -int conv_in_to_ucs(struct conv_context *c, unsigned int y); -int conv_ucs_to_out(struct conv_context *c, unsigned int ucs); +int conv_in_to_ucs(struct conv_context *c, uint y); +int conv_ucs_to_out(struct conv_context *c, uint ucs); /* 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); +uint conv_x_to_ucs(uint x); +uint conv_ucs_to_x(uint ucs); +uint conv_x_count(void); /* Charset names */ -int find_charset_by_name(char *); +int find_charset_by_name(const char *); char *charset_name(int); #endif