Annotation of gpl/axl/babel/axl_babel.h, revision 1.1.1.1

1.1       misho       1: /*
                      2:  *  LibAxl:  Another XML library
                      3:  *  Copyright (C) 2008 Advanced Software Production Line, S.L.
                      4:  *
                      5:  *  This program is free software; you can redistribute it and/or
                      6:  *  modify it under the terms of the GNU Lesser General Public License
                      7:  *  as published by the Free Software Foundation; either version 2.1 of
                      8:  *  the License, or (at your option) any later version.
                      9:  *
                     10:  *  This program is distributed in the hope that it will be useful,
                     11:  *  but WITHOUT ANY WARRANTY; without even the implied warranty of 
                     12:  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the  
                     13:  *  GNU Lesser General Public License for more details.
                     14:  *
                     15:  *  You should have received a copy of the GNU Lesser General Public
                     16:  *  License along with this program; if not, write to the Free
                     17:  *  Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
                     18:  *  02111-1307 USA
                     19:  *  
                     20:  *  You may find a copy of the license under this software is released
                     21:  *  at COPYING file. This is LGPL software: you are welcome to
                     22:  *  develop proprietary applications using this library without any
                     23:  *  royalty or fee but returning back any change, improvement or
                     24:  *  addition in the form of source code, project image, documentation
                     25:  *  patches, etc. 
                     26:  *
                     27:  *  For commercial support on build XML enabled solutions contact us:
                     28:  *          
                     29:  *      Postal address:
                     30:  *         Advanced Software Production Line, S.L.
                     31:  *         Edificio Alius A, Oficina 102,
                     32:  *         C/ Antonio Suarez Nº 10,
                     33:  *         Alcalá de Henares 28802 Madrid
                     34:  *         Spain
                     35:  *
                     36:  *      Email address:
                     37:  *         info@aspl.es - http://www.aspl.es/xml
                     38:  */
                     39: #ifndef __AXL_BABEL_H__
                     40: #define __AXL_BABEL_H__
                     41: 
                     42: /** 
                     43:  * \addtogroup axl_babel
                     44:  * @{
                     45:  */
                     46: 
                     47: /* include base library */
                     48: #include <axl.h>
                     49: 
                     50: /**
                     51:  * @brief Public definition for a translation unit from a native
                     52:  * codification into universal unicode representation using UTF-8
                     53:  * format. This type is used by modules providing input encoding
                     54:  * support to axl babel. If you are not developing an encoding module,
                     55:  * this type isn't useful for you.
                     56:  */
                     57: typedef struct _axlBabelTable {
                     58:        /**
                     59:         * @brief Amount of unicode utf-8 atoms stored in buffer.
                     60:         */
                     61:        short size;
                     62: 
                     63:        /**
                     64:         * @brief Support for 6 octects to represent one unicode unit.
                     65:         */
                     66:        unsigned char  buffer[6];
                     67: } axlBabelTable;
                     68: 
                     69: axl_bool    axl_babel_init (axlError ** error);
                     70: 
                     71: void        axl_babel_finish ();
                     72: 
                     73: axl_bool    axl_babel_detect_codification (axlStream   * stream, 
                     74:                                           const char ** encoding,
                     75:                                           axlPointer    user_data,
                     76:                                           axlError   ** error);
                     77: 
                     78: axl_bool    axl_babel_configure_encoding  (axlStream  * stream, 
                     79:                                           const char * encoding, 
                     80:                                           const char * detected, 
                     81:                                           axlPointer user_data, 
                     82:                                           axlError ** error);
                     83: 
                     84: axl_bool    axl_babel_check_utf8_content  (const char * content,
                     85:                                           int          content_length,
                     86:                                           int        * index_error);
                     87: 
                     88: 
                     89: #endif /* end __AXL_BABEL_H__ */
                     90: 
                     91: /**
                     92:  * @}
                     93:  */

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>