Merge XFA to PDFium master at 4dc95e7 on 10/28/2014
[pdfium.git] / xfa / src / fxbarcode / src / include / BC_PDF417BarcodeMatrix.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_BARCODEMATRIX_H_\r
8 #define _BC_BARCODEMATRIX_H_\r
9 class CBC_BarcodeRow;\r
10 class CBC_BarcodeMatrix;\r
11 class CBC_BarcodeMatrix : public CFX_Object\r
12 {\r
13 public:\r
14     CBC_BarcodeMatrix();\r
15     CBC_BarcodeMatrix(FX_INT32 height, FX_INT32 width);\r
16     virtual ~CBC_BarcodeMatrix();\r
17     void set(FX_INT32 x, FX_INT32 y, FX_BYTE value);\r
18     void setMatrix(FX_INT32 x, FX_INT32 y, FX_BOOL black);\r
19     void startRow();\r
20     CBC_BarcodeRow* getCurrentRow();\r
21     CFX_ByteArray& getMatrix();\r
22     CFX_ByteArray& getScaledMatrix(FX_INT32 scale);\r
23     CFX_ByteArray& getScaledMatrix(FX_INT32 xScale, FX_INT32 yScale);\r
24     FX_INT32 getWidth();\r
25     FX_INT32 getHeight();\r
26 private:\r
27     CFX_PtrArray m_matrix;\r
28     CFX_ByteArray m_matrixOut;\r
29     FX_INT32 m_currentRow;\r
30     FX_INT32 m_height;\r
31     FX_INT32 m_width;\r
32     FX_INT32 m_outWidth;\r
33     FX_INT32 m_outHeight;\r
34 };\r
35 #endif\r