diff options
Diffstat (limited to 'xfa/fxbarcode/qrcode/BC_QRDataMask.cpp')
-rw-r--r-- | xfa/fxbarcode/qrcode/BC_QRDataMask.cpp | 164 |
1 files changed, 0 insertions, 164 deletions
diff --git a/xfa/fxbarcode/qrcode/BC_QRDataMask.cpp b/xfa/fxbarcode/qrcode/BC_QRDataMask.cpp deleted file mode 100644 index e21b5d2d37..0000000000 --- a/xfa/fxbarcode/qrcode/BC_QRDataMask.cpp +++ /dev/null @@ -1,164 +0,0 @@ -// Copyright 2014 PDFium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com -// Original code is licensed as follows: -/* - * Copyright 2007 ZXing authors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#include "xfa/fxbarcode/common/BC_CommonBitMatrix.h" -#include "xfa/fxbarcode/qrcode/BC_QRDataMask.h" -#include "xfa/fxbarcode/utils.h" - -namespace { - -int32_t N_DATA_MASKS = 0; -CFX_ArrayTemplate<CBC_QRDataMask*>* DATA_MASKS = nullptr; - -} // namespace - -void CBC_QRDataMask::Initialize() { - DATA_MASKS = new CFX_ArrayTemplate<CBC_QRDataMask*>(); - N_DATA_MASKS = BuildDataMasks(); -} - -void CBC_QRDataMask::Finalize() { - Destroy(); - delete DATA_MASKS; - DATA_MASKS = nullptr; -} - -void CBC_QRDataMask::Destroy() { - for (int32_t i = 0; i < N_DATA_MASKS; ++i) - delete (*DATA_MASKS)[i]; -} - -void CBC_QRDataMask::UnmaskBitMatrix(CBC_CommonBitMatrix* bits, - int32_t dimension) { - for (int32_t i = 0; i < dimension; i++) { - for (int32_t j = 0; j < dimension; j++) { - if (IsMasked(i, j)) - bits->Flip(j, i); - } - } -} - -CBC_QRDataMask* CBC_QRDataMask::ForReference(int32_t reference, int32_t& e) { - if (reference < 0 || reference > 7) { - e = BCExceptionReferenceMustBeBetween0And7; - BC_EXCEPTION_CHECK_ReturnValue(e, nullptr); - } - return (*DATA_MASKS)[reference]; -} - -class DataMask000 : public CBC_QRDataMask { - public: - // CBC_QRDataMask - FX_BOOL IsMasked(int32_t x, int32_t y) override; -}; - -class DataMask001 : public CBC_QRDataMask { - public: - // CBC_QRDataMask - FX_BOOL IsMasked(int32_t x, int32_t y) override; -}; - -class DataMask010 : public CBC_QRDataMask { - public: - // CBC_QRDataMask - FX_BOOL IsMasked(int32_t x, int32_t y) override; -}; - -class DataMask011 : public CBC_QRDataMask { - public: - // CBC_QRDataMask - FX_BOOL IsMasked(int32_t x, int32_t y) override; -}; - -class DataMask100 : public CBC_QRDataMask { - public: - // CBC_QRDataMask - FX_BOOL IsMasked(int32_t x, int32_t y) override; -}; - -class DataMask101 : public CBC_QRDataMask { - public: - // CBC_QRDataMask - FX_BOOL IsMasked(int32_t x, int32_t y) override; -}; - -class DataMask110 : public CBC_QRDataMask { - public: - // CBC_QRDataMask - FX_BOOL IsMasked(int32_t x, int32_t y) override; -}; - -class DataMask111 : public CBC_QRDataMask { - public: - // CBC_QRDataMask - FX_BOOL IsMasked(int32_t x, int32_t y) override; -}; - -int32_t CBC_QRDataMask::BuildDataMasks() { - DATA_MASKS->Add(new DataMask000); - DATA_MASKS->Add(new DataMask001); - DATA_MASKS->Add(new DataMask010); - DATA_MASKS->Add(new DataMask011); - DATA_MASKS->Add(new DataMask100); - DATA_MASKS->Add(new DataMask101); - DATA_MASKS->Add(new DataMask110); - DATA_MASKS->Add(new DataMask111); - return DATA_MASKS->GetSize(); -} - -CBC_QRDataMask::CBC_QRDataMask() {} - -CBC_QRDataMask::~CBC_QRDataMask() {} - -FX_BOOL DataMask000::IsMasked(int32_t x, int32_t y) { - return ((x + y) % 2) == 0; -} - -FX_BOOL DataMask001::IsMasked(int32_t x, int32_t y) { - return (x % 2) == 0; -} - -FX_BOOL DataMask010::IsMasked(int32_t x, int32_t y) { - return y % 3 == 0; -} - -FX_BOOL DataMask011::IsMasked(int32_t x, int32_t y) { - return (x + y) % 3 == 0; -} - -FX_BOOL DataMask100::IsMasked(int32_t x, int32_t y) { - return (((x >> 1) + (y / 3)) % 2) == 0; -} - -FX_BOOL DataMask101::IsMasked(int32_t x, int32_t y) { - size_t temp = x * y; - return (temp % 2) + (temp % 3) == 0; -} - -FX_BOOL DataMask110::IsMasked(int32_t x, int32_t y) { - size_t temp = x * y; - return (((temp % 2) + (temp % 3)) % 2) == 0; -} - -FX_BOOL DataMask111::IsMasked(int32_t x, int32_t y) { - return ((((x + y) % 2) + ((x * y) % 3)) % 2) == 0; -} |