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 _BC_QRCODERMASKUTIL_H_
8#define _BC_QRCODERMASKUTIL_H_
9class CBC_CommonByteMatrix;
10class CBC_QRCoderMaskUtil {
11 public:
12  CBC_QRCoderMaskUtil();
13  virtual ~CBC_QRCoderMaskUtil();
14  static FX_BOOL GetDataMaskBit(int32_t maskPattern,
15                                int32_t x,
16                                int32_t y,
17                                int32_t& e);
18
19  static int32_t ApplyMaskPenaltyRule1(CBC_CommonByteMatrix* matrix);
20  static int32_t ApplyMaskPenaltyRule2(CBC_CommonByteMatrix* matrix);
21  static int32_t ApplyMaskPenaltyRule3(CBC_CommonByteMatrix* matrix);
22  static int32_t ApplyMaskPenaltyRule4(CBC_CommonByteMatrix* matrix);
23  static int32_t ApplyMaskPenaltyRule1Internal(CBC_CommonByteMatrix* matrix,
24                                               FX_BOOL isHorizontal);
25};
26#endif
27