diff --git a/source/zxing/zxing/common/BitArray.cpp b/source/zxing/zxing/common/BitArray.cpp index 0cde919..452f474 100644 --- a/source/zxing/zxing/common/BitArray.cpp +++ b/source/zxing/zxing/common/BitArray.cpp @@ -179,6 +179,15 @@ void BitArray::appendBits(int value, int numBits) } } +void BitArray::appendBitArray(const BitArray& other) +{ + int otherSize = other.size; + ensureCapacity(size + otherSize); + for (int i = 0; i < otherSize; i++) { + appendBit(other.get(i)); + } +} + void BitArray::ensureCapacity(int size) { if (size > bits->size() * 32) diff --git a/source/zxing/zxing/common/BitArray.h b/source/zxing/zxing/common/BitArray.h index bd25c24..6b6b623 100644 --- a/source/zxing/zxing/common/BitArray.h +++ b/source/zxing/zxing/common/BitArray.h @@ -64,6 +64,7 @@ public: void appendBit(bool bit); void appendBits(int value, int numBits); + void appendBitArray(const BitArray& other); void ensureCapacity(int size); void xor_(const BitArray& other);