OLD | NEW |
1 // Copyright 2014 PDFium Authors. All rights reserved. | 1 // Copyright 2014 PDFium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com | 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com |
6 | 6 |
7 #ifndef XFA_FXBARCODE_PDF417_BC_PDF417ECERRORCORRECTION_H_ | 7 #ifndef XFA_FXBARCODE_PDF417_BC_PDF417ECERRORCORRECTION_H_ |
8 #define XFA_FXBARCODE_PDF417_BC_PDF417ECERRORCORRECTION_H_ | 8 #define XFA_FXBARCODE_PDF417_BC_PDF417ECERRORCORRECTION_H_ |
9 | 9 |
10 class CBC_PDF417ECModulusGF; | 10 class CBC_PDF417ECModulusGF; |
11 class CBC_PDF417ECModulusPoly; | 11 class CBC_PDF417ECModulusPoly; |
12 class CBC_PDF417ECErrorCorrection { | 12 class CBC_PDF417ECErrorCorrection { |
13 public: | 13 public: |
14 CBC_PDF417ECErrorCorrection(); | 14 CBC_PDF417ECErrorCorrection(); |
15 virtual ~CBC_PDF417ECErrorCorrection(); | 15 virtual ~CBC_PDF417ECErrorCorrection(); |
16 static void Initialize(int32_t& e); | 16 static void Initialize(int32_t& e); |
17 static void Finalize(); | 17 static void Finalize(); |
18 static int32_t decode(CFX_Int32Array& received, | 18 static int32_t decode(CFX_Int32Array& received, |
19 int32_t numECCodewords, | 19 int32_t numECCodewords, |
20 CFX_Int32Array& erasures, | 20 CFX_Int32Array& erasures, |
21 int32_t& e); | 21 int32_t& e); |
22 | 22 |
23 private: | 23 private: |
24 static CBC_PDF417ECModulusGF* m_field; | 24 static CBC_PDF417ECModulusGF* m_field; |
25 static CFX_PtrArray* runEuclideanAlgorithm(CBC_PDF417ECModulusPoly* a, | 25 static CFX_ArrayTemplate<CBC_PDF417ECModulusPoly*>* runEuclideanAlgorithm( |
26 CBC_PDF417ECModulusPoly* b, | 26 CBC_PDF417ECModulusPoly* a, |
27 int32_t R, | 27 CBC_PDF417ECModulusPoly* b, |
28 int32_t& e); | 28 int32_t R, |
| 29 int32_t& e); |
29 static CFX_Int32Array* findErrorLocations( | 30 static CFX_Int32Array* findErrorLocations( |
30 CBC_PDF417ECModulusPoly* errorLocator, | 31 CBC_PDF417ECModulusPoly* errorLocator, |
31 int32_t& e); | 32 int32_t& e); |
32 static CFX_Int32Array* findErrorMagnitudes( | 33 static CFX_Int32Array* findErrorMagnitudes( |
33 CBC_PDF417ECModulusPoly* errorEvaluator, | 34 CBC_PDF417ECModulusPoly* errorEvaluator, |
34 CBC_PDF417ECModulusPoly* errorLocator, | 35 CBC_PDF417ECModulusPoly* errorLocator, |
35 CFX_Int32Array& errorLocations, | 36 CFX_Int32Array& errorLocations, |
36 int32_t& e); | 37 int32_t& e); |
37 }; | 38 }; |
38 | 39 |
39 #endif // XFA_FXBARCODE_PDF417_BC_PDF417ECERRORCORRECTION_H_ | 40 #endif // XFA_FXBARCODE_PDF417_BC_PDF417ECERRORCORRECTION_H_ |
OLD | NEW |