Libparserutils
filter.h
Go to the documentation of this file.
1/*
2 * This file is part of LibParserUtils.
3 * Licensed under the MIT License,
4 * http://www.opensource.org/licenses/mit-license.php
5 * Copyright 2007 John-Mark Bell <jmb@netsurf-browser.org>
6 */
7
8#ifndef parserutils_input_filter_h_
9#define parserutils_input_filter_h_
10
11#include <inttypes.h>
12
13#include <parserutils/errors.h>
15
17
24
30 struct {
32 const char *name;
35
36
37/* Create an input filter */
39 parserutils_filter **filter);
40/* Destroy an input filter */
42
43/* Configure an input filter */
47
48/* Process a chunk of data */
50 const uint8_t **data, size_t *len,
51 uint8_t **output, size_t *outlen);
52
53/* Reset an input filter's state */
55
56#endif
57
size_t len
Definition codec_8859.c:23
parserutils_error
Definition errors.h:18
parserutils_filter_opttype
Input filter option types.
Definition filter.h:21
@ PARSERUTILS_FILTER_SET_ENCODING
Definition filter.h:22
parserutils_error parserutils__filter_reset(parserutils_filter *input)
Reset an input filter's state.
Definition filter.c:301
parserutils_error parserutils__filter_process_chunk(parserutils_filter *input, const uint8_t **data, size_t *len, uint8_t **output, size_t *outlen)
Process a chunk of data.
Definition filter.c:179
parserutils_error parserutils__filter_create(const char *int_enc, parserutils_filter **filter)
Create an input filter.
Definition filter.c:58
parserutils_error parserutils__filter_destroy(parserutils_filter *input)
Destroy an input filter.
Definition filter.c:114
parserutils_error parserutils__filter_setopt(parserutils_filter *input, parserutils_filter_opttype type, parserutils_filter_optparams *params)
Configure an input filter.
Definition filter.c:149
Input filter.
Definition filter.c:24
Input filter option parameters.
Definition filter.h:28
const char * name
Encoding name.
Definition filter.h:32
struct parserutils_filter_optparams::@5 encoding
Parameters for encoding setting.