codec_impl.h

Go to the documentation of this file.
00001 /*
00002  * This file is part of LibParserUtils.
00003  * Licensed under the MIT License,
00004  *                http://www.opensource.org/licenses/mit-license.php
00005  * Copyright 2007 John-Mark Bell <jmb@netsurf-browser.org>
00006  */
00007 
00008 #ifndef parserutils_charset_codecs_codecimpl_h_
00009 #define parserutils_charset_codecs_codecimpl_h_
00010 
00011 #include <stdbool.h>
00012 #include <inttypes.h>
00013 
00014 #include <parserutils/charset/codec.h>
00015 
00019 struct parserutils_charset_codec {
00020         uint16_t mibenum;                       
00022         parserutils_charset_codec_errormode errormode;  
00024         struct {
00025                 parserutils_error (*destroy)(parserutils_charset_codec *codec);
00026                 parserutils_error (*encode)(parserutils_charset_codec *codec,
00027                                 const uint8_t **source, size_t *sourcelen,
00028                                 uint8_t **dest, size_t *destlen);
00029                 parserutils_error (*decode)(parserutils_charset_codec *codec,
00030                                 const uint8_t **source, size_t *sourcelen,
00031                                 uint8_t **dest, size_t *destlen);
00032                 parserutils_error (*reset)(parserutils_charset_codec *codec);
00033         } handler; 
00034 };
00035 
00039 typedef struct parserutils_charset_handler {
00040         bool (*handles_charset)(const char *charset);
00041         parserutils_error (*create)(const char *charset,
00042                         parserutils_charset_codec **codec);
00043 } parserutils_charset_handler;
00044 
00045 #endif

Generated on Wed Jul 29 11:59:20 2015 for Libparserutils by  doxygen 1.5.6