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 |
16 static void Initialize(int32_t& e); | 17 static void Initialize(int32_t& e); |
17 static void Finalize(); | 18 static void Finalize(); |
18 static int32_t decode(CFX_Int32Array& received, | 19 static int32_t decode(CFX_Int32Array& received, |
19 int32_t numECCodewords, | 20 int32_t numECCodewords, |
20 CFX_Int32Array& erasures, | 21 CFX_Int32Array& erasures, |
21 int32_t& e); | 22 int32_t& e); |
22 | 23 |
23 private: | 24 private: |
24 static CBC_PDF417ECModulusGF* m_field; | 25 static CBC_PDF417ECModulusGF* m_field; |
25 static CFX_ArrayTemplate<CBC_PDF417ECModulusPoly*>* runEuclideanAlgorithm( | 26 static CFX_ArrayTemplate<CBC_PDF417ECModulusPoly*>* runEuclideanAlgorithm( |
26 CBC_PDF417ECModulusPoly* a, | 27 CBC_PDF417ECModulusPoly* a, |
27 CBC_PDF417ECModulusPoly* b, | 28 CBC_PDF417ECModulusPoly* b, |
28 int32_t R, | 29 int32_t R, |
29 int32_t& e); | 30 int32_t& e); |
30 static CFX_Int32Array* findErrorLocations( | 31 static CFX_Int32Array* findErrorLocations( |
31 CBC_PDF417ECModulusPoly* errorLocator, | 32 CBC_PDF417ECModulusPoly* errorLocator, |
32 int32_t& e); | 33 int32_t& e); |
33 static CFX_Int32Array* findErrorMagnitudes( | 34 static CFX_Int32Array* findErrorMagnitudes( |
34 CBC_PDF417ECModulusPoly* errorEvaluator, | 35 CBC_PDF417ECModulusPoly* errorEvaluator, |
35 CBC_PDF417ECModulusPoly* errorLocator, | 36 CBC_PDF417ECModulusPoly* errorLocator, |
36 CFX_Int32Array& errorLocations, | 37 CFX_Int32Array& errorLocations, |
37 int32_t& e); | 38 int32_t& e); |
38 }; | 39 }; |
39 | 40 |
40 #endif // XFA_FXBARCODE_PDF417_BC_PDF417ECERRORCORRECTION_H_ | 41 #endif // XFA_FXBARCODE_PDF417_BC_PDF417ECERRORCORRECTION_H_ |
OLD | NEW |