OLD | NEW |
1 // Copyright 2014 PDFium Authors. All rights reserved. | 1 // Copyright 2014 PDFium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com | 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com |
6 | 6 |
7 #ifndef _BC_QRCODERENCODER_H_ | 7 #ifndef _BC_QRCODERENCODER_H_ |
8 #define _BC_QRCODERENCODER_H_ | 8 #define _BC_QRCODERENCODER_H_ |
9 class Make_Pair; | 9 class Make_Pair; |
10 class CBC_QRCoder; | 10 class CBC_QRCoder; |
11 class CBC_QRCoderErrorCorrectionLevel; | 11 class CBC_QRCoderErrorCorrectionLevel; |
12 class CBC_QRCoderMode; | 12 class CBC_QRCoderMode; |
13 class CBC_QRCoderBitVector; | 13 class CBC_QRCoderBitVector; |
14 class CBC_CommonByteArray; | 14 class CBC_CommonByteArray; |
15 class CBC_CommonByteMatrix; | 15 class CBC_CommonByteMatrix; |
16 class CBC_QRCoderEncoder; | 16 class CBC_QRCoderEncoder; |
17 class CBC_QRCoderEncoder : public CFX_Object | 17 class CBC_QRCoderEncoder |
18 { | 18 { |
19 private: | 19 private: |
20 const static FX_INT32 m_alphaNumbericTable[96]; | 20 const static FX_INT32 m_alphaNumbericTable[96]; |
21 public: | 21 public: |
22 CBC_QRCoderEncoder(); | 22 CBC_QRCoderEncoder(); |
23 virtual ~CBC_QRCoderEncoder(); | 23 virtual ~CBC_QRCoderEncoder(); |
24 | 24 |
25 static void Encode(const CFX_ByteString &content, CBC_QRCoderErrorCorrection
Level* ecLevel, CBC_QRCoder *qrCode, FX_INT32 &e, FX_INT32 versionSpecify = 0); | 25 static void Encode(const CFX_ByteString &content, CBC_QRCoderErrorCorrection
Level* ecLevel, CBC_QRCoder *qrCode, FX_INT32 &e, FX_INT32 versionSpecify = 0); |
26 static void Encode(const CFX_WideString &content, CBC_QRCoderErrorCorrection
Level* ecLevel, CBC_QRCoder *qrCode, FX_INT32 &e); | 26 static void Encode(const CFX_WideString &content, CBC_QRCoderErrorCorrection
Level* ecLevel, CBC_QRCoder *qrCode, FX_INT32 &e); |
27 static void EncodeWithSpecifyVersion(const CFX_ByteString &content, CBC_QRCo
derErrorCorrectionLevel* ecLevel, | 27 static void EncodeWithSpecifyVersion(const CFX_ByteString &content, CBC_QRCo
derErrorCorrectionLevel* ecLevel, |
(...skipping 23 matching lines...) Expand all Loading... |
51 static FX_INT32 ChooseMaskPattern(CBC_QRCoderBitVector* bits, CBC_QRCoderErr
orCorrectionLevel* ecLevel, | 51 static FX_INT32 ChooseMaskPattern(CBC_QRCoderBitVector* bits, CBC_QRCoderErr
orCorrectionLevel* ecLevel, |
52 FX_INT32 version, CBC_CommonByteMatrix* ma
trix, FX_INT32 &e); | 52 FX_INT32 version, CBC_CommonByteMatrix* ma
trix, FX_INT32 &e); |
53 static FX_INT32 CalculateMaskPenalty(CBC_CommonByteMatrix* matrix); | 53 static FX_INT32 CalculateMaskPenalty(CBC_CommonByteMatrix* matrix); |
54 static void TerminateBits(FX_INT32 numDataBytes, CBC_QRCoderBitVector* bits,
FX_INT32 &e); | 54 static void TerminateBits(FX_INT32 numDataBytes, CBC_QRCoderBitVector* bits,
FX_INT32 &e); |
55 static FX_INT32 GetSpanByVersion(CBC_QRCoderMode *modeFirst, CBC_QRCoderMode
*modeSecond, FX_INT32 versionNum, FX_INT32 &e); | 55 static FX_INT32 GetSpanByVersion(CBC_QRCoderMode *modeFirst, CBC_QRCoderMode
*modeSecond, FX_INT32 versionNum, FX_INT32 &e); |
56 static void MergeString(CFX_PtrArray &result, FX_INT32 versionNum, FX_INT32
&e); | 56 static void MergeString(CFX_PtrArray &result, FX_INT32 versionNum, FX_INT32
&e); |
57 static void SplitString(const CFX_ByteString &content, CFX_PtrArray &result)
; | 57 static void SplitString(const CFX_ByteString &content, CFX_PtrArray &result)
; |
58 static void AppendDataModeLenghInfo(CFX_PtrArray &splitResult, CBC_QRCoderBi
tVector &headerAndDataBits, CBC_QRCoderMode *tempMode, CBC_QRCoder *qrCode,
CFX_ByteString &encoding, FX_INT32 &e); | 58 static void AppendDataModeLenghInfo(CFX_PtrArray &splitResult, CBC_QRCoderBi
tVector &headerAndDataBits, CBC_QRCoderMode *tempMode, CBC_QRCoder *qrCode,
CFX_ByteString &encoding, FX_INT32 &e); |
59 }; | 59 }; |
60 #endif | 60 #endif |
OLD | NEW |