24#ifndef __M_BIT_BUF_H__
25#define __M_BIT_BUF_H__
29#include <mstdlib/base/m_defs.h>
30#include <mstdlib/base/m_types.h>
31#include <mstdlib/base/m_buf.h>
void M_bit_buf_truncate(M_bit_buf_t *bbuf, size_t len_bits)
void M_bit_buf_set_bit(M_bit_buf_t *bbuf, M_uint8 bit, size_t bit_idx, M_uint8 fill_bit)
M_bit_buf_pad_t
Definition: m_bit_buf.h:75
size_t M_bit_buf_len(const M_bit_buf_t *bbuf)
struct M_bit_buf M_bit_buf_t
Definition: m_bit_buf.h:72
M_bool M_bit_buf_add_bitstr(M_bit_buf_t *bbuf, const char *bitstr, M_bit_buf_pad_t pad)
M_bool M_bit_buf_update_bit(M_bit_buf_t *bbuf, size_t bit_idx, M_uint8 bit)
void M_bit_buf_add(M_bit_buf_t *bbuf, M_uint64 bits, size_t nbits, M_bit_buf_pad_t pad)
void M_bit_buf_fill(M_bit_buf_t *bbuf, M_uint8 bit, size_t len_bits)
M_bit_buf_t * M_bit_buf_create(void) M_WARN_UNUSED_RESULT M_MALLOC
M_buf_t * M_bit_buf_finish_buf(M_bit_buf_t *bbuf) M_FREE(1) M_WARN_UNUSED_RESULT M_MALLOC
void M_bit_buf_reserve(M_bit_buf_t *bbuf, size_t nbits)
void M_bit_buf_add_bytes(M_bit_buf_t *bbuf, const void *bytes, size_t nbits)
void M_bit_buf_destroy(M_bit_buf_t *bbuf) M_FREE(1)
size_t M_bit_buf_len_bytes(const M_bit_buf_t *bbuf)
M_uint8 * M_bit_buf_finish(M_bit_buf_t *bbuf, size_t *nbytes) M_FREE(1) M_WARN_UNUSED_RESULT M_MALLOC
void M_bit_buf_add_bit(M_bit_buf_t *bbuf, M_uint8 bit)
const M_uint8 * M_bit_buf_peek(const M_bit_buf_t *bbuf)
@ M_BIT_BUF_PAD_AFTER
Definition: m_bit_buf.h:78
@ M_BIT_BUF_PAD_BEFORE
Definition: m_bit_buf.h:77
@ M_BIT_BUF_PAD_NONE
Definition: m_bit_buf.h:76
struct M_buf M_buf_t
Definition: m_buf.h:77