1 // Copyright 2014 PDFium Authors. All rights reserved.
\r
2 // Use of this source code is governed by a BSD-style license that can be
\r
3 // found in the LICENSE file.
\r
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
\r
7 #ifndef _BC_PDF417ECMODULUSPOLY_H_
\r
8 #define _BC_PDF417ECMODULUSPOLY_H_
\r
9 class CBC_PDF417ECModulusGF;
\r
10 class CBC_PDF417ECModulusPoly;
\r
11 class CBC_PDF417ECModulusPoly : public CFX_Object
\r
14 CBC_PDF417ECModulusPoly(CBC_PDF417ECModulusGF* field, CFX_Int32Array &coefficients, FX_INT32 &e);
\r
15 virtual ~CBC_PDF417ECModulusPoly();
\r
16 CFX_Int32Array& getCoefficients();
\r
17 CBC_PDF417ECModulusGF* getField();
\r
18 FX_INT32 getDegree();
\r
20 FX_INT32 getCoefficient(FX_INT32 degree);
\r
21 FX_INT32 evaluateAt(FX_INT32 a);
\r
22 CBC_PDF417ECModulusPoly* add(CBC_PDF417ECModulusPoly* other, FX_INT32 &e);
\r
23 CBC_PDF417ECModulusPoly* subtract(CBC_PDF417ECModulusPoly* other, FX_INT32 &e);
\r
24 CBC_PDF417ECModulusPoly* multiply(CBC_PDF417ECModulusPoly* other, FX_INT32 &e);
\r
25 CBC_PDF417ECModulusPoly* negative(FX_INT32 &e);
\r
26 CBC_PDF417ECModulusPoly* multiply(FX_INT32 scalar, FX_INT32 &e);
\r
27 CBC_PDF417ECModulusPoly* multiplyByMonomial(FX_INT32 degree, FX_INT32 coefficient, FX_INT32 &e);
\r
28 CFX_PtrArray* divide(CBC_PDF417ECModulusPoly* other, FX_INT32 &e);
\r
29 CFX_ByteString toString();
\r
31 CBC_PDF417ECModulusGF* m_field;
\r
32 CFX_Int32Array m_coefficients;
\r