| OLD | NEW |
| (Empty) |
| 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 XFA_SRC_FXBARCODE_DATAMATRIX_BC_DATAMATRIXDECODEDBITSTREAMPARSER_H_ | |
| 8 #define XFA_SRC_FXBARCODE_DATAMATRIX_BC_DATAMATRIXDECODEDBITSTREAMPARSER_H_ | |
| 9 class CBC_CommonDecoderResult; | |
| 10 class CBC_CommonBitSource; | |
| 11 class CBC_DataMatrixDecodedBitStreamParser { | |
| 12 public: | |
| 13 CBC_DataMatrixDecodedBitStreamParser(); | |
| 14 virtual ~CBC_DataMatrixDecodedBitStreamParser(); | |
| 15 static CBC_CommonDecoderResult* Decode(CFX_ByteArray& bytes, int32_t& e); | |
| 16 | |
| 17 private: | |
| 18 static int32_t DecodeAsciiSegment(CBC_CommonBitSource* bits, | |
| 19 CFX_ByteString& result, | |
| 20 CFX_ByteString& resultTrailer, | |
| 21 int32_t& e); | |
| 22 static void DecodeC40Segment(CBC_CommonBitSource* bits, | |
| 23 CFX_ByteString& result, | |
| 24 int32_t& e); | |
| 25 static void DecodeTextSegment(CBC_CommonBitSource* bits, | |
| 26 CFX_ByteString& result, | |
| 27 int32_t& e); | |
| 28 static void DecodeAnsiX12Segment(CBC_CommonBitSource* bits, | |
| 29 CFX_ByteString& result, | |
| 30 int32_t& e); | |
| 31 static void ParseTwoBytes(int32_t firstByte, | |
| 32 int32_t secondByte, | |
| 33 CFX_Int32Array& result); | |
| 34 static void DecodeEdifactSegment(CBC_CommonBitSource* bits, | |
| 35 CFX_ByteString& result, | |
| 36 int32_t& e); | |
| 37 static void DecodeBase256Segment(CBC_CommonBitSource* bits, | |
| 38 CFX_ByteString& result, | |
| 39 CFX_Int32Array& byteSegments, | |
| 40 int32_t& e); | |
| 41 static uint8_t Unrandomize255State(int32_t randomizedBase256Codeword, | |
| 42 int32_t base256CodewordPosition); | |
| 43 | |
| 44 static const FX_CHAR C40_BASIC_SET_CHARS[]; | |
| 45 static const FX_CHAR C40_SHIFT2_SET_CHARS[]; | |
| 46 | |
| 47 static const FX_CHAR TEXT_BASIC_SET_CHARS[]; | |
| 48 static const FX_CHAR TEXT_SHIFT3_SET_CHARS[]; | |
| 49 static const int32_t PAD_ENCODE; | |
| 50 static const int32_t ASCII_ENCODE; | |
| 51 static const int32_t C40_ENCODE; | |
| 52 static const int32_t TEXT_ENCODE; | |
| 53 static const int32_t ANSIX12_ENCODE; | |
| 54 static const int32_t EDIFACT_ENCODE; | |
| 55 static const int32_t BASE256_ENCODE; | |
| 56 }; | |
| 57 | |
| 58 #endif // XFA_SRC_FXBARCODE_DATAMATRIX_BC_DATAMATRIXDECODEDBITSTREAMPARSER_H_ | |
| OLD | NEW |