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_BUFFEREDIMAGELUMINANCESOURCE_H_ 8 #define _BC_BUFFEREDIMAGELUMINANCESOURCE_H_ 9 class CBC_LuminanceSource; 10 class CBC_BufferedImageLuminanceSource; 11 class CBC_BufferedImageLuminanceSource : public CBC_LuminanceSource { 12 public: 13 explicit CBC_BufferedImageLuminanceSource(const CFX_WideString& filename); 14 explicit CBC_BufferedImageLuminanceSource(CFX_DIBitmap* pBitmap); 15 virtual ~CBC_BufferedImageLuminanceSource(); 16 17 CFX_ByteArray* GetRow(int32_t y, CFX_ByteArray& row, int32_t& e); 18 CFX_ByteArray* GetMatrix(); 19 virtual void Init(int32_t& e); 20 21 private: 22 int32_t m_bytesPerLine; 23 int32_t m_left; 24 int32_t m_top; 25 CFX_Int32Array m_rgbData; 26 CFX_DIBitmap* m_pBitmap; 27 const CFX_WideString m_filename; 28 }; 29 #endif 30