| OLD | NEW |
| (Empty) |
| 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 XFA_SRC_FXBARCODE_PDF417_BC_PDF417ECERRORCORRECTION_H_ | |
| 8 #define XFA_SRC_FXBARCODE_PDF417_BC_PDF417ECERRORCORRECTION_H_ | |
| 9 | |
| 10 class CBC_PDF417ECModulusGF; | |
| 11 class CBC_PDF417ECModulusPoly; | |
| 12 class CBC_PDF417ECErrorCorrection { | |
| 13 public: | |
| 14 CBC_PDF417ECErrorCorrection(); | |
| 15 virtual ~CBC_PDF417ECErrorCorrection(); | |
| 16 static void Initialize(int32_t& e); | |
| 17 static void Finalize(); | |
| 18 static int32_t decode(CFX_Int32Array& received, | |
| 19 int32_t numECCodewords, | |
| 20 CFX_Int32Array& erasures, | |
| 21 int32_t& e); | |
| 22 | |
| 23 private: | |
| 24 static CBC_PDF417ECModulusGF* m_field; | |
| 25 static CFX_PtrArray* runEuclideanAlgorithm(CBC_PDF417ECModulusPoly* a, | |
| 26 CBC_PDF417ECModulusPoly* b, | |
| 27 int32_t R, | |
| 28 int32_t& e); | |
| 29 static CFX_Int32Array* findErrorLocations( | |
| 30 CBC_PDF417ECModulusPoly* errorLocator, | |
| 31 int32_t& e); | |
| 32 static CFX_Int32Array* findErrorMagnitudes( | |
| 33 CBC_PDF417ECModulusPoly* errorEvaluator, | |
| 34 CBC_PDF417ECModulusPoly* errorLocator, | |
| 35 CFX_Int32Array& errorLocations, | |
| 36 int32_t& e); | |
| 37 }; | |
| 38 | |
| 39 #endif // XFA_SRC_FXBARCODE_PDF417_BC_PDF417ECERRORCORRECTION_H_ | |
| OLD | NEW |