// Copyright 2014 PDFium Authors. All rights reserved. | |
// Use of this source code is governed by a BSD-style license that can be | |
// found in the LICENSE file. | |
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com | |
#ifndef _BC_BARCODEMATRIX_H_ | |
#define _BC_BARCODEMATRIX_H_ | |
class CBC_BarcodeRow; | |
class CBC_BarcodeMatrix { | |
public: | |
CBC_BarcodeMatrix(); | |
CBC_BarcodeMatrix(int32_t height, int32_t width); | |
virtual ~CBC_BarcodeMatrix(); | |
void set(int32_t x, int32_t y, uint8_t value); | |
void setMatrix(int32_t x, int32_t y, FX_BOOL black); | |
void startRow(); | |
CBC_BarcodeRow* getCurrentRow(); | |
CFX_ByteArray& getMatrix(); | |
CFX_ByteArray& getScaledMatrix(int32_t scale); | |
CFX_ByteArray& getScaledMatrix(int32_t xScale, int32_t yScale); | |
int32_t getWidth(); | |
int32_t getHeight(); | |
private: | |
CFX_PtrArray m_matrix; | |
CFX_ByteArray m_matrixOut; | |
int32_t m_currentRow; | |
int32_t m_height; | |
int32_t m_width; | |
int32_t m_outWidth; | |
int32_t m_outHeight; | |
}; | |
#endif |