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 _BC_REEDSOLOMONDECODER_H_ | 7 #ifndef _BC_REEDSOLOMONDECODER_H_ |
8 #define _BC_REEDSOLOMONDECODER_H_ | 8 #define _BC_REEDSOLOMONDECODER_H_ |
9 class CBC_ReedSolomonGF256; | 9 class CBC_ReedSolomonGF256; |
10 class CBC_ReedSolomonGF256Poly; | 10 class CBC_ReedSolomonGF256Poly; |
11 class CBC_ReedSolomonDecoder; | 11 class CBC_ReedSolomonDecoder |
12 class CBC_ReedSolomonDecoder : public CFX_Object | |
13 { | 12 { |
14 private: | 13 private: |
15 CBC_ReedSolomonGF256 * m_field; | 14 CBC_ReedSolomonGF256 * m_field; |
16 public: | 15 public: |
17 CBC_ReedSolomonDecoder(CBC_ReedSolomonGF256 * field); | 16 CBC_ReedSolomonDecoder(CBC_ReedSolomonGF256 * field); |
18 virtual ~CBC_ReedSolomonDecoder(); | 17 virtual ~CBC_ReedSolomonDecoder(); |
19 void Decode(CFX_Int32Array* received, FX_INT32 twoS, FX_INT32 &e); | 18 void Decode(CFX_Int32Array* received, FX_INT32 twoS, FX_INT32 &e); |
20 CFX_PtrArray* RunEuclideanAlgorithm(CBC_ReedSolomonGF256Poly* a, CBC_ReedSol
omonGF256Poly* b, FX_INT32 R, FX_INT32 &e); | 19 CFX_PtrArray* RunEuclideanAlgorithm(CBC_ReedSolomonGF256Poly* a, CBC_ReedSol
omonGF256Poly* b, FX_INT32 R, FX_INT32 &e); |
21 CFX_Int32Array* FindErrorLocations(CBC_ReedSolomonGF256Poly* errorLocator, F
X_INT32 &e); | 20 CFX_Int32Array* FindErrorLocations(CBC_ReedSolomonGF256Poly* errorLocator, F
X_INT32 &e); |
22 CFX_Int32Array* FindErrorMagnitudes(CBC_ReedSolomonGF256Poly* errorEvaluator
, CFX_Int32Array* errorLocations, FX_BOOL dataMatrix, FX_INT32 &e); | 21 CFX_Int32Array* FindErrorMagnitudes(CBC_ReedSolomonGF256Poly* errorEvaluator
, CFX_Int32Array* errorLocations, FX_BOOL dataMatrix, FX_INT32 &e); |
23 }; | 22 }; |
24 #endif | 23 #endif |
OLD | NEW |