summaryrefslogtreecommitdiff
path: root/xfa/fxbarcode/qrcode/BC_QRGridSampler.h
diff options
context:
space:
mode:
Diffstat (limited to 'xfa/fxbarcode/qrcode/BC_QRGridSampler.h')
-rw-r--r--xfa/fxbarcode/qrcode/BC_QRGridSampler.h48
1 files changed, 48 insertions, 0 deletions
diff --git a/xfa/fxbarcode/qrcode/BC_QRGridSampler.h b/xfa/fxbarcode/qrcode/BC_QRGridSampler.h
new file mode 100644
index 0000000000..4e10c5627a
--- /dev/null
+++ b/xfa/fxbarcode/qrcode/BC_QRGridSampler.h
@@ -0,0 +1,48 @@
+// 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 XFA_FXBARCODE_QRCODE_BC_QRGRIDSAMPLER_H_
+#define XFA_FXBARCODE_QRCODE_BC_QRGRIDSAMPLER_H_
+
+#include "core/include/fxcrt/fx_basic.h"
+
+class CBC_CommonBitMatrix;
+
+class CBC_QRGridSampler {
+ private:
+ static CBC_QRGridSampler m_gridSampler;
+
+ public:
+ CBC_QRGridSampler();
+ virtual ~CBC_QRGridSampler();
+ virtual CBC_CommonBitMatrix* SampleGrid(CBC_CommonBitMatrix* image,
+ int32_t dimensionX,
+ int32_t dimensionY,
+ FX_FLOAT p1ToX,
+ FX_FLOAT p1ToY,
+ FX_FLOAT p2ToX,
+ FX_FLOAT p2ToY,
+ FX_FLOAT p3ToX,
+ FX_FLOAT p3ToY,
+ FX_FLOAT p4ToX,
+ FX_FLOAT p4ToY,
+ FX_FLOAT p1FromX,
+ FX_FLOAT p1FromY,
+ FX_FLOAT p2FromX,
+ FX_FLOAT p2FromY,
+ FX_FLOAT p3FromX,
+ FX_FLOAT p3FromY,
+ FX_FLOAT p4FromX,
+ FX_FLOAT p4FromY,
+ int32_t& e);
+
+ static CBC_QRGridSampler& GetInstance();
+ static void CheckAndNudgePoints(CBC_CommonBitMatrix* image,
+ CFX_FloatArray* points,
+ int32_t& e);
+};
+
+#endif // XFA_FXBARCODE_QRCODE_BC_QRGRIDSAMPLER_H_