summaryrefslogtreecommitdiffstats
path: root/lisiblepng/src/lisiblepng/bitstream.h
blob: 72d82953dab135e2eae20ad4eb65242a6e4e5694 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#ifndef CUTTERENG_BITSTREAM_H
#define CUTTERENG_BITSTREAM_H

#include <stdint.h>
#include <stdlib.h>

typedef struct {
  const uint8_t *data;
  size_t data_size;

  size_t current_byte_index;
  uint8_t current_bit_offset;
} Bitstream;

void Bitstream_init(Bitstream *bitstream, const uint8_t *data,
                    size_t data_size);
void Bitstream_skip(Bitstream *bitstream, size_t bit_count);
uint16_t Bitstream_next_bits(Bitstream *bitstream, int bit_count);

#endif // CUTTERENG_BITSTREAM_H
Go back to lisible.xyz