1*3ac0a46fSAndroid Build Coastguard Worker // Copyright 2014 The PDFium Authors 2*3ac0a46fSAndroid Build Coastguard Worker // Use of this source code is governed by a BSD-style license that can be 3*3ac0a46fSAndroid Build Coastguard Worker // found in the LICENSE file. 4*3ac0a46fSAndroid Build Coastguard Worker 5*3ac0a46fSAndroid Build Coastguard Worker // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com 6*3ac0a46fSAndroid Build Coastguard Worker 7*3ac0a46fSAndroid Build Coastguard Worker #ifndef FXBARCODE_QRCODE_BC_QRCODERMASKUTIL_H_ 8*3ac0a46fSAndroid Build Coastguard Worker #define FXBARCODE_QRCODE_BC_QRCODERMASKUTIL_H_ 9*3ac0a46fSAndroid Build Coastguard Worker 10*3ac0a46fSAndroid Build Coastguard Worker #include <stdint.h> 11*3ac0a46fSAndroid Build Coastguard Worker 12*3ac0a46fSAndroid Build Coastguard Worker class CBC_CommonByteMatrix; 13*3ac0a46fSAndroid Build Coastguard Worker 14*3ac0a46fSAndroid Build Coastguard Worker class CBC_QRCoderMaskUtil { 15*3ac0a46fSAndroid Build Coastguard Worker public: 16*3ac0a46fSAndroid Build Coastguard Worker CBC_QRCoderMaskUtil() = delete; 17*3ac0a46fSAndroid Build Coastguard Worker ~CBC_QRCoderMaskUtil() = delete; 18*3ac0a46fSAndroid Build Coastguard Worker 19*3ac0a46fSAndroid Build Coastguard Worker static bool GetDataMaskBit(int32_t maskPattern, int32_t x, int32_t y); 20*3ac0a46fSAndroid Build Coastguard Worker 21*3ac0a46fSAndroid Build Coastguard Worker static int32_t ApplyMaskPenaltyRule1(CBC_CommonByteMatrix* matrix); 22*3ac0a46fSAndroid Build Coastguard Worker static int32_t ApplyMaskPenaltyRule2(CBC_CommonByteMatrix* matrix); 23*3ac0a46fSAndroid Build Coastguard Worker static int32_t ApplyMaskPenaltyRule3(CBC_CommonByteMatrix* matrix); 24*3ac0a46fSAndroid Build Coastguard Worker static int32_t ApplyMaskPenaltyRule4(CBC_CommonByteMatrix* matrix); 25*3ac0a46fSAndroid Build Coastguard Worker }; 26*3ac0a46fSAndroid Build Coastguard Worker 27*3ac0a46fSAndroid Build Coastguard Worker #endif // FXBARCODE_QRCODE_BC_QRCODERMASKUTIL_H_ 28