Home | History | Annotate | Download | only in oned
      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_ONEDUPCAREADER_H_
      8 #define _BC_ONEDUPCAREADER_H_
      9 class CBC_BinaryBitmap;
     10 class CBC_CommonBitArray;
     11 class CBC_OneDimReader;
     12 class CBC_OnedEAN13Reader;
     13 class CBC_OnedUPCAReader;
     14 class CBC_OnedUPCAReader : public CBC_OneDimReader {
     15  private:
     16   CBC_OnedEAN13Reader* m_ean13Reader;
     17 
     18  public:
     19   CBC_OnedUPCAReader();
     20   virtual ~CBC_OnedUPCAReader();
     21   CFX_ByteString DecodeRow(int32_t rowNumber,
     22                            CBC_CommonBitArray* row,
     23                            int32_t hints,
     24                            int32_t& e);
     25   CFX_ByteString DecodeRow(int32_t rowNumber,
     26                            CBC_CommonBitArray* row,
     27                            CFX_Int32Array* startGuardRange,
     28                            int32_t hints,
     29                            int32_t& e);
     30   CFX_ByteString Decode(CBC_BinaryBitmap* image, int32_t& e);
     31   CFX_ByteString Decode(CBC_BinaryBitmap* image, int32_t hints, int32_t& e);
     32   virtual void Init();
     33 
     34  protected:
     35   int32_t DecodeMiddle(CBC_CommonBitArray* row,
     36                        CFX_Int32Array* startRange,
     37                        CFX_ByteString& resultString,
     38                        int32_t& e);
     39   CFX_ByteString MaybeReturnResult(CFX_ByteString& result, int32_t& e);
     40 };
     41 #endif
     42