diff options
| author | luigi1111 <luigi1111w@gmail.com> | 2020-09-25 18:27:48 -0500 |
|---|---|---|
| committer | luigi1111 <luigi1111w@gmail.com> | 2020-09-25 18:27:48 -0500 |
| commit | a32d39cc9689e994287a9b35304aa966ab42a371 (patch) | |
| tree | 273664db3d061b8a51cc17e7d4b8c46a78a03e9f /src/QR-Code-generator/BitBuffer.cpp | |
| parent | 8ef7b7c89a204b95791f1570e2063d536c2ac41b (diff) | |
| parent | b12ec3b0f054eabd21dfa6e7c43795aeff7e3189 (diff) | |
| download | monzero-gui-a32d39cc9689e994287a9b35304aa966ab42a371.tar.gz monzero-gui-a32d39cc9689e994287a9b35304aa966ab42a371.tar.xz monzero-gui-a32d39cc9689e994287a9b35304aa966ab42a371.zip | |
Merge pull request #3108
b12ec3b QR-Code-generator: remove from repo, use monero qrcodegen (selsta)
Diffstat (limited to 'src/QR-Code-generator/BitBuffer.cpp')
| -rw-r--r-- | src/QR-Code-generator/BitBuffer.cpp | 91 |
1 files changed, 0 insertions, 91 deletions
diff --git a/src/QR-Code-generator/BitBuffer.cpp b/src/QR-Code-generator/BitBuffer.cpp deleted file mode 100644 index 9bb2c2ee..00000000 --- a/src/QR-Code-generator/BitBuffer.cpp +++ /dev/null @@ -1,91 +0,0 @@ -// Copyright (c) 2014-2019, The Monero Project -// -// All rights reserved. -// -// Redistribution and use in source and binary forms, with or without modification, are -// permitted provided that the following conditions are met: -// -// 1. Redistributions of source code must retain the above copyright notice, this list of -// conditions and the following disclaimer. -// -// 2. Redistributions in binary form must reproduce the above copyright notice, this list -// of conditions and the following disclaimer in the documentation and/or other -// materials provided with the distribution. -// -// 3. Neither the name of the copyright holder nor the names of its contributors may be -// used to endorse or promote products derived from this software without specific -// prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY -// EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL -// THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, -// STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF -// THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -/* - * QR Code generator library (C++) - * - * Copyright (c) 2016 Project Nayuki - * https://www.nayuki.io/page/qr-code-generator-library - * - * (MIT License) - * Permission is hereby granted, free of charge, to any person obtaining a copy of - * this software and associated documentation files (the "Software"), to deal in - * the Software without restriction, including without limitation the rights to - * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of - * the Software, and to permit persons to whom the Software is furnished to do so, - * subject to the following conditions: - * - The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - The Software is provided "as is", without warranty of any kind, express or - * implied, including but not limited to the warranties of merchantability, - * fitness for a particular purpose and noninfringement. In no event shall the - * authors or copyright holders be liable for any claim, damages or other - * liability, whether in an action of contract, tort or otherwise, arising from, - * out of or in connection with the Software or the use or other dealings in the - * Software. - */ - -#include <cstddef> -#include "BitBuffer.hpp" - - -qrcodegen::BitBuffer::BitBuffer() : - data(), - bitLength(0) {} - - -int qrcodegen::BitBuffer::getBitLength() const { - return bitLength; -} - - -std::vector<uint8_t> qrcodegen::BitBuffer::getBytes() const { - return data; -} - - -void qrcodegen::BitBuffer::appendBits(uint32_t val, int len) { - if (len < 0 || len > 32 || (len < 32 && (val >> len) != 0)) - throw "Value out of range"; - size_t newBitLen = bitLength + len; - while (data.size() * 8 < newBitLen) - data.push_back(0); - for (int i = len - 1; i >= 0; i--, bitLength++) // Append bit by bit - data.at(bitLength >> 3) |= ((val >> i) & 1) << (7 - (bitLength & 7)); -} - - -void qrcodegen::BitBuffer::appendData(const QrSegment &seg) { - size_t newBitLen = bitLength + seg.bitLength; - while (data.size() * 8 < newBitLen) - data.push_back(0); - for (int i = 0; i < seg.bitLength; i++, bitLength++) { // Append bit by bit - int bit = (seg.data.at(i >> 3) >> (7 - (i & 7))) & 1; - data.at(bitLength >> 3) |= bit << (7 - (bitLength & 7)); - } -} |
