1 // Copyright 2014 PDFium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com 6 7 #ifndef _BC_BARCODEMATRIX_H_ 8 #define _BC_BARCODEMATRIX_H_ 9 class CBC_BarcodeRow; 10 class CBC_BarcodeMatrix { 11 public: 12 CBC_BarcodeMatrix(); 13 CBC_BarcodeMatrix(int32_t height, int32_t width); 14 virtual ~CBC_BarcodeMatrix(); 15 void set(int32_t x, int32_t y, uint8_t value); 16 void setMatrix(int32_t x, int32_t y, FX_BOOL black); 17 void startRow(); 18 CBC_BarcodeRow* getCurrentRow(); 19 CFX_ByteArray& getMatrix(); 20 CFX_ByteArray& getScaledMatrix(int32_t scale); 21 CFX_ByteArray& getScaledMatrix(int32_t xScale, int32_t yScale); 22 int32_t getWidth(); 23 int32_t getHeight(); 24 25 private: 26 CFX_PtrArray m_matrix; 27 CFX_ByteArray m_matrixOut; 28 int32_t m_currentRow; 29 int32_t m_height; 30 int32_t m_width; 31 int32_t m_outWidth; 32 int32_t m_outHeight; 33 }; 34 #endif 35