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_FXBARCODE_QRCODE_BC_QRCODERBITVECTOR_H_ 8 #define XFA_FXBARCODE_QRCODE_BC_QRCODERBITVECTOR_H_ 9 10 #include <stdint.h> 11 12 class CBC_QRCoderBitVector { 13 private: 14 int32_t m_sizeInBits; 15 uint8_t* m_array; 16 int32_t m_size; 17 18 void AppendByte(int32_t value); 19 20 public: 21 CBC_QRCoderBitVector(); 22 virtual ~CBC_QRCoderBitVector(); 23 int32_t At(int32_t index, int32_t& e); 24 int32_t Size(); 25 int32_t sizeInBytes(); 26 void AppendBit(int32_t bit, int32_t& e); 27 void AppendBits(int32_t value, int32_t numBits, int32_t& e); 28 void AppendBitVector(CBC_QRCoderBitVector* bits, int32_t& e); 29 void XOR(CBC_QRCoderBitVector* other, int32_t& e); 30 uint8_t* GetArray(); 31 void Clear(); 32 virtual void Init(); 33 }; 34 35 #endif // XFA_FXBARCODE_QRCODE_BC_QRCODERBITVECTOR_H_ 36