Merge to XFA: Use stdint.h types throughout PDFium.
[pdfium.git] / xfa / src / fxbarcode / common / BC_CommonBitMatrix.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_COMMONBITMATRIX_H_\r
8 #define _BC_COMMONBITMATRIX_H_\r
9 class CBC_CommonBitArray;\r
10 class CBC_CommonBitMatrix\r
11 {\r
12 public:\r
13     CBC_CommonBitMatrix();\r
14     virtual ~CBC_CommonBitMatrix();\r
15     FX_BOOL Get(int32_t x, int32_t y);\r
16     void Set(int32_t x, int32_t y);\r
17     void Flip(int32_t x, int32_t y);\r
18     void Clear();\r
19     void SetRegion(int32_t left, int32_t top, int32_t width, int32_t height, int32_t &e);\r
20     CBC_CommonBitArray* GetRow(int32_t y, CBC_CommonBitArray* row);\r
21     void SetRow(int32_t y, CBC_CommonBitArray* row);\r
22     CBC_CommonBitArray* GetCol(int32_t y, CBC_CommonBitArray* row);\r
23     void SetCol(int32_t y, CBC_CommonBitArray* col);\r
24     int32_t GetWidth();\r
25     int32_t GetHeight();\r
26     int32_t GetRowSize();\r
27     int32_t GetDimension(int32_t &e);\r
28     virtual void Init(int32_t dimension);\r
29     virtual void Init(int32_t width, int32_t height);\r
30     int32_t* GetBits();\r
31 private:\r
32     int32_t m_width;\r
33     int32_t m_height;\r
34     int32_t m_rowSize;\r
35     int32_t* m_bits;\r
36 };\r
37 #endif\r