Merge to XFA: Use stdint.h types throughout PDFium.
[pdfium.git] / xfa / src / fxbarcode / datamatrix / BC_DefaultPlacement.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_DEFAULTPLACEMENT_H_\r
8 #define _BC_DEFAULTPLACEMENT_H_\r
9 class CBC_DefaultPlacement\r
10 {\r
11 public:\r
12     CBC_DefaultPlacement(CFX_WideString codewords, int32_t numcols, int32_t numrows);\r
13     virtual ~CBC_DefaultPlacement();\r
14 \r
15     int32_t getNumrows();\r
16     int32_t getNumcols();\r
17     CFX_ByteArray& getBits();\r
18     FX_BOOL getBit(int32_t col, int32_t row);\r
19     void setBit(int32_t col, int32_t row, FX_BOOL bit);\r
20     FX_BOOL hasBit(int32_t col, int32_t row);\r
21     void place();\r
22 private:\r
23     CFX_WideString m_codewords;\r
24     int32_t m_numrows;\r
25     int32_t m_numcols;\r
26     CFX_ByteArray m_bits;\r
27     void module(int32_t row, int32_t col, int32_t pos, int32_t bit);\r
28     void utah(int32_t row, int32_t col, int32_t pos);\r
29     void corner1(int32_t pos);\r
30     void corner2(int32_t pos);\r
31     void corner3(int32_t pos);\r
32     void corner4(int32_t pos);\r
33 };\r
34 #endif\r