summaryrefslogtreecommitdiff
path: root/xfa/src/fxbarcode/BC_LuminanceSource.h
blob: abf2d2302d622cfd630506e40d767fa28d36fd94 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
// 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_LUMINANCESOURCE_H
#define _BC_LUMINANCESOURCE_H
class CBC_LuminanceSource;
class CBC_LuminanceSource {
 public:
  CBC_LuminanceSource(int32_t width, int32_t height);
  virtual ~CBC_LuminanceSource();
  int32_t GetWidth();
  int32_t GetHeight();

  virtual CFX_ByteArray* GetRow(int32_t y, CFX_ByteArray& row, int32_t& e) = 0;
  virtual CFX_ByteArray* GetMatrix() = 0;
  virtual FX_BOOL IsCropSupported() { return FALSE; }
  virtual FX_BOOL IsRotateSupported() { return FALSE; }

  virtual CBC_LuminanceSource* RotateCounterClockwise(int32_t& e) = 0;

 protected:
  int32_t m_width;
  int32_t m_height;
};
#endif