1/******************************************************************************
2 *
3 * Copyright (C) 2018 The Android Open Source Project
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at:
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 *
17 *****************************************************************************
18 * Originally developed and contributed by Ittiam Systems Pvt. Ltd, Bangalore
19*/
20#ifndef IMPD_DRC_BITBUFFER_H
21#define IMPD_DRC_BITBUFFER_H
22
23typedef struct ia_bit_buf_struct {
24  UWORD8 *ptr_bit_buf_base;
25  UWORD8 *ptr_bit_buf_end;
26
27  UWORD8 *ptr_read_next;
28
29  WORD32 bit_pos;
30  WORD32 cnt_bits;
31
32  WORD32 size;
33  WORD32 error;
34
35} ia_bit_buf_struct;
36
37ia_bit_buf_struct *impd_create_bit_buf(ia_bit_buf_struct *it_bit_buff,
38                                       UWORD8 *ptr_bit_buf_base,
39                                       WORD32 bit_buf_size);
40
41ia_bit_buf_struct *impd_create_init_bit_buf(ia_bit_buf_struct *it_bit_buff,
42                                            UWORD8 *ptr_bit_buf_base,
43                                            WORD32 bit_buf_size);
44
45WORD32 impd_read_bits_buf(ia_bit_buf_struct *it_bit_buff, WORD no_of_bits);
46
47#endif
48