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 _BC_READSOLOMON_H_
8 #define _BC_READSOLOMON_H_
9 class CBC_ReedSolomonGF256;
10 class CBC_ReedSolomonGF256Poly;
11 class CBC_ReedSolomonEncoder {
12  private:
13   CBC_ReedSolomonGF256* m_field;
14   CFX_PtrArray m_cachedGenerators;
15   CBC_ReedSolomonGF256Poly* BuildGenerator(int32_t degree, int32_t& e);
16 
17  public:
18   CBC_ReedSolomonEncoder(CBC_ReedSolomonGF256* field);
19   virtual ~CBC_ReedSolomonEncoder();
20 
21   void Encode(CFX_Int32Array* toEncode, int32_t ecBytes, int32_t& e);
22   virtual void Init();
23 };
24 #endif
25