OLD | NEW |
1 // Copyright 2014 PDFium Authors. All rights reserved. | 1 // Copyright 2014 PDFium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com | 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com |
6 // Original code is licensed as follows: | 6 // Original code is licensed as follows: |
7 /* | 7 /* |
8 * Copyright 2007 ZXing authors | 8 * Copyright 2007 ZXing authors |
9 * | 9 * |
10 * Licensed under the Apache License, Version 2.0 (the "License"); | 10 * Licensed under the Apache License, Version 2.0 (the "License"); |
(...skipping 10 matching lines...) Expand all Loading... |
21 */ | 21 */ |
22 | 22 |
23 #include "xfa/fxbarcode/common/BC_CommonBitArray.h" | 23 #include "xfa/fxbarcode/common/BC_CommonBitArray.h" |
24 #include "xfa/fxbarcode/common/BC_CommonBitMatrix.h" | 24 #include "xfa/fxbarcode/common/BC_CommonBitMatrix.h" |
25 #include "xfa/fxbarcode/utils.h" | 25 #include "xfa/fxbarcode/utils.h" |
26 | 26 |
27 CBC_CommonBitMatrix::CBC_CommonBitMatrix() { | 27 CBC_CommonBitMatrix::CBC_CommonBitMatrix() { |
28 m_width = 0; | 28 m_width = 0; |
29 m_height = 0; | 29 m_height = 0; |
30 m_rowSize = 0; | 30 m_rowSize = 0; |
31 m_bits = NULL; | 31 m_bits = nullptr; |
32 } | 32 } |
33 void CBC_CommonBitMatrix::Init(int32_t dimension) { | 33 void CBC_CommonBitMatrix::Init(int32_t dimension) { |
34 m_width = dimension; | 34 m_width = dimension; |
35 m_height = dimension; | 35 m_height = dimension; |
36 int32_t rowSize = (m_height + 31) >> 5; | 36 int32_t rowSize = (m_height + 31) >> 5; |
37 m_rowSize = rowSize; | 37 m_rowSize = rowSize; |
38 m_bits = FX_Alloc2D(int32_t, m_rowSize, m_height); | 38 m_bits = FX_Alloc2D(int32_t, m_rowSize, m_height); |
39 FXSYS_memset(m_bits, 0, m_rowSize * m_height * sizeof(int32_t)); | 39 FXSYS_memset(m_bits, 0, m_rowSize * m_height * sizeof(int32_t)); |
40 } | 40 } |
41 void CBC_CommonBitMatrix::Init(int32_t width, int32_t height) { | 41 void CBC_CommonBitMatrix::Init(int32_t width, int32_t height) { |
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
96 for (y = top; y < bottom; y++) { | 96 for (y = top; y < bottom; y++) { |
97 int32_t offset = y * m_rowSize; | 97 int32_t offset = y * m_rowSize; |
98 int32_t x; | 98 int32_t x; |
99 for (x = left; x < right; x++) { | 99 for (x = left; x < right; x++) { |
100 m_bits[offset + (x >> 5)] |= 1 << (x & 0x1f); | 100 m_bits[offset + (x >> 5)] |= 1 << (x & 0x1f); |
101 } | 101 } |
102 } | 102 } |
103 } | 103 } |
104 CBC_CommonBitArray* CBC_CommonBitMatrix::GetRow(int32_t y, | 104 CBC_CommonBitArray* CBC_CommonBitMatrix::GetRow(int32_t y, |
105 CBC_CommonBitArray* row) { | 105 CBC_CommonBitArray* row) { |
106 CBC_CommonBitArray* rowArray = NULL; | 106 CBC_CommonBitArray* rowArray = nullptr; |
107 if (row == NULL || row->GetSize() < m_width) { | 107 if (!row || row->GetSize() < m_width) { |
108 rowArray = new CBC_CommonBitArray(m_width); | 108 rowArray = new CBC_CommonBitArray(m_width); |
109 } else { | 109 } else { |
110 rowArray = new CBC_CommonBitArray(row); | 110 rowArray = new CBC_CommonBitArray(row); |
111 } | 111 } |
112 int32_t offset = y * m_rowSize; | 112 int32_t offset = y * m_rowSize; |
113 int32_t x; | 113 int32_t x; |
114 for (x = 0; x < m_rowSize; x++) { | 114 for (x = 0; x < m_rowSize; x++) { |
115 rowArray->SetBulk(x << 5, m_bits[offset + x]); | 115 rowArray->SetBulk(x << 5, m_bits[offset + x]); |
116 } | 116 } |
117 return rowArray; | 117 return rowArray; |
(...skipping 19 matching lines...) Expand all Loading... |
137 int32_t CBC_CommonBitMatrix::GetRowSize() { | 137 int32_t CBC_CommonBitMatrix::GetRowSize() { |
138 return m_rowSize; | 138 return m_rowSize; |
139 } | 139 } |
140 int32_t CBC_CommonBitMatrix::GetDimension(int32_t& e) { | 140 int32_t CBC_CommonBitMatrix::GetDimension(int32_t& e) { |
141 if (m_width != m_height) { | 141 if (m_width != m_height) { |
142 e = BCExceptionCanNotCallGetDimensionOnNonSquareMatrix; | 142 e = BCExceptionCanNotCallGetDimensionOnNonSquareMatrix; |
143 return 0; | 143 return 0; |
144 } | 144 } |
145 return m_width; | 145 return m_width; |
146 } | 146 } |
OLD | NEW |