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