XMMS2
xmmsv_bitbuffer.h
Go to the documentation of this file.
1/* XMMS2 - X Music Multiplexer System
2 * Copyright (C) 2003-2011 XMMS2 Team
3 *
4 * PLUGINS ARE NOT CONSIDERED TO BE DERIVED WORK !!!
5 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
10 *
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
15 */
16
17
18#ifndef __XMMSV_BITBUFFER_H__
19#define __XMMSV_BITBUFFER_H__
20
21#include "xmmsc/xmmsv_general.h"
22
23#ifdef __cplusplus
24extern "C" {
25#endif
26
27/**
28 * @defgroup BitbufferType Bitbuffer
29 * @ingroup ValueType
30 * @{
31 */
32
33/* Bitbuffer */
34xmmsv_t *xmmsv_bitbuffer_new_ro (const unsigned char *v, int len);
36int xmmsv_bitbuffer_get_bits (xmmsv_t *v, int bits, int *res);
37int xmmsv_bitbuffer_get_data (xmmsv_t *v, unsigned char *b, int len);
38int xmmsv_bitbuffer_put_bits (xmmsv_t *v, int bits, int d);
39int xmmsv_bitbuffer_put_bits_at (xmmsv_t *v, int bits, int d, int offset);
40int xmmsv_bitbuffer_put_data (xmmsv_t *v, const unsigned char *b, int len);
42int xmmsv_bitbuffer_goto (xmmsv_t *v, int pos);
47const unsigned char *xmmsv_bitbuffer_buffer (xmmsv_t *v);
48
51
52/** @} */
53
54#ifdef __cplusplus
55}
56#endif
57
58#endif
int xmmsv_bitbuffer_get_bits(xmmsv_t *v, int bits, int *res)
Definition value.c:2524
xmmsv_t * xmmsv_bitbuffer_new(void)
Definition value.c:2511
int xmmsv_bitbuffer_put_bits_at(xmmsv_t *v, int bits, int d, int offset)
Definition value.c:2610
int xmmsv_bitbuffer_len(xmmsv_t *v)
Definition value.c:2671
int xmmsv_bitbuffer_deserialize_value(xmmsv_t *bb, xmmsv_t **val)
int xmmsv_bitbuffer_end(xmmsv_t *v)
Definition value.c:2665
xmmsv_t * xmmsv_bitbuffer_new_ro(const unsigned char *v, int len)
Definition value.c:2499
int xmmsv_bitbuffer_align(xmmsv_t *v)
Definition value.c:2636
int xmmsv_bitbuffer_pos(xmmsv_t *v)
Definition value.c:2653
int xmmsv_bitbuffer_put_data(xmmsv_t *v, const unsigned char *b, int len)
Definition value.c:2622
int xmmsv_bitbuffer_goto(xmmsv_t *v, int pos)
Definition value.c:2643
const unsigned char * xmmsv_bitbuffer_buffer(xmmsv_t *v)
Definition value.c:2677
int xmmsv_bitbuffer_get_data(xmmsv_t *v, unsigned char *b, int len)
Definition value.c:2553
int xmmsv_bitbuffer_serialize_value(xmmsv_t *bb, xmmsv_t *v)
int xmmsv_bitbuffer_rewind(xmmsv_t *v)
Definition value.c:2659
int xmmsv_bitbuffer_put_bits(xmmsv_t *v, int bits, int d)
Definition value.c:2567
struct xmmsv_St xmmsv_t