Merge to XFA: Use stdint.h types throughout PDFium.
[pdfium.git] / xfa / src / fxbarcode / common / BC_CommonBitArray.h
1 // Copyright 2014 PDFium Authors. All rights reserved.\r
2 // Use of this source code is governed by a BSD-style license that can be\r
3 // found in the LICENSE file.\r
4 \r
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com\r
6 \r
7 #ifndef _BC_COMMONBITARRAY_H_\r
8 #define _BC_COMMONBITARRAY_H_\r
9 class CBC_CommonBitArray\r
10 {\r
11 public:\r
12     CBC_CommonBitArray(CBC_CommonBitArray* array);\r
13     CBC_CommonBitArray(int32_t size);\r
14     CBC_CommonBitArray();\r
15     virtual ~CBC_CommonBitArray();\r
16     int32_t GetSize();\r
17     CFX_Int32Array& GetBits();\r
18     int32_t GetSizeInBytes();\r
19     FX_BOOL Get(int32_t i);\r
20     void Set(int32_t i);\r
21     void Flip(int32_t i);\r
22     void SetBulk(int32_t i, int32_t newBits);\r
23     FX_BOOL IsRange(int32_t start, int32_t end, FX_BOOL value, int32_t &e);\r
24     int32_t *GetBitArray();\r
25     void Reverse();\r
26     void Clear();\r
27 private:\r
28     int32_t  m_size;\r
29     CFX_Int32Array m_bits;\r
30 };\r
31 #endif\r