Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
Tetragramm
GitHub Repository: Tetragramm/opencv
Path: blob/master/3rdparty/quirc/src/version_db.c
16337 views
1
/* quirc -- QR-code recognition library
2
* Copyright (C) 2010-2012 Daniel Beer <[email protected]>
3
*
4
* Permission to use, copy, modify, and/or distribute this software for any
5
* purpose with or without fee is hereby granted, provided that the above
6
* copyright notice and this permission notice appear in all copies.
7
*
8
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
9
* WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
10
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
11
* ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
12
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
13
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
14
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
15
*/
16
17
#include <quirc_internal.h>
18
19
const struct quirc_version_info quirc_version_db[QUIRC_MAX_VERSION + 1] = {
20
{ /* 0 */
21
.data_bytes = 0,
22
.apat = {0},
23
.ecc = {
24
{.bs = 0, .dw = 0, .ns = 0},
25
{.bs = 0, .dw = 0, .ns = 0},
26
{.bs = 0, .dw = 0, .ns = 0},
27
{.bs = 0, .dw = 0, .ns = 0}
28
}
29
},
30
{ /* Version 1 */
31
.data_bytes = 26,
32
.apat = {0},
33
.ecc = {
34
{.bs = 26, .dw = 16, .ns = 1},
35
{.bs = 26, .dw = 19, .ns = 1},
36
{.bs = 26, .dw = 9, .ns = 1},
37
{.bs = 26, .dw = 13, .ns = 1}
38
}
39
},
40
{ /* Version 2 */
41
.data_bytes = 44,
42
.apat = {6, 18, 0},
43
.ecc = {
44
{.bs = 44, .dw = 28, .ns = 1},
45
{.bs = 44, .dw = 34, .ns = 1},
46
{.bs = 44, .dw = 16, .ns = 1},
47
{.bs = 44, .dw = 22, .ns = 1}
48
}
49
},
50
{ /* Version 3 */
51
.data_bytes = 70,
52
.apat = {6, 22, 0},
53
.ecc = {
54
{.bs = 70, .dw = 44, .ns = 1},
55
{.bs = 70, .dw = 55, .ns = 1},
56
{.bs = 35, .dw = 13, .ns = 2},
57
{.bs = 35, .dw = 17, .ns = 2}
58
}
59
},
60
{ /* Version 4 */
61
.data_bytes = 100,
62
.apat = {6, 26, 0},
63
.ecc = {
64
{.bs = 50, .dw = 32, .ns = 2},
65
{.bs = 100, .dw = 80, .ns = 1},
66
{.bs = 25, .dw = 9, .ns = 4},
67
{.bs = 50, .dw = 24, .ns = 2}
68
}
69
},
70
{ /* Version 5 */
71
.data_bytes = 134,
72
.apat = {6, 30, 0},
73
.ecc = {
74
{.bs = 67, .dw = 43, .ns = 2},
75
{.bs = 134, .dw = 108, .ns = 1},
76
{.bs = 33, .dw = 11, .ns = 2},
77
{.bs = 33, .dw = 15, .ns = 2}
78
}
79
},
80
{ /* Version 6 */
81
.data_bytes = 172,
82
.apat = {6, 34, 0},
83
.ecc = {
84
{.bs = 43, .dw = 27, .ns = 4},
85
{.bs = 86, .dw = 68, .ns = 2},
86
{.bs = 43, .dw = 15, .ns = 4},
87
{.bs = 43, .dw = 19, .ns = 4}
88
}
89
},
90
{ /* Version 7 */
91
.data_bytes = 196,
92
.apat = {6, 22, 38, 0},
93
.ecc = {
94
{.bs = 49, .dw = 31, .ns = 4},
95
{.bs = 98, .dw = 78, .ns = 2},
96
{.bs = 39, .dw = 13, .ns = 4},
97
{.bs = 32, .dw = 14, .ns = 2}
98
}
99
},
100
{ /* Version 8 */
101
.data_bytes = 242,
102
.apat = {6, 24, 42, 0},
103
.ecc = {
104
{.bs = 60, .dw = 38, .ns = 2},
105
{.bs = 121, .dw = 97, .ns = 2},
106
{.bs = 40, .dw = 14, .ns = 4},
107
{.bs = 40, .dw = 18, .ns = 4}
108
}
109
},
110
{ /* Version 9 */
111
.data_bytes = 292,
112
.apat = {6, 26, 46, 0},
113
.ecc = {
114
{.bs = 58, .dw = 36, .ns = 3},
115
{.bs = 146, .dw = 116, .ns = 2},
116
{.bs = 36, .dw = 12, .ns = 4},
117
{.bs = 36, .dw = 16, .ns = 4}
118
}
119
},
120
{ /* Version 10 */
121
.data_bytes = 346,
122
.apat = {6, 28, 50, 0},
123
.ecc = {
124
{.bs = 69, .dw = 43, .ns = 4},
125
{.bs = 86, .dw = 68, .ns = 2},
126
{.bs = 43, .dw = 15, .ns = 6},
127
{.bs = 43, .dw = 19, .ns = 6}
128
}
129
},
130
{ /* Version 11 */
131
.data_bytes = 404,
132
.apat = {6, 30, 54, 0},
133
.ecc = {
134
{.bs = 80, .dw = 50, .ns = 1},
135
{.bs = 101, .dw = 81, .ns = 4},
136
{.bs = 36, .dw = 12, .ns = 3},
137
{.bs = 50, .dw = 22, .ns = 4}
138
}
139
},
140
{ /* Version 12 */
141
.data_bytes = 466,
142
.apat = {6, 32, 58, 0},
143
.ecc = {
144
{.bs = 58, .dw = 36, .ns = 6},
145
{.bs = 116, .dw = 92, .ns = 2},
146
{.bs = 42, .dw = 14, .ns = 7},
147
{.bs = 46, .dw = 20, .ns = 4}
148
}
149
},
150
{ /* Version 13 */
151
.data_bytes = 532,
152
.apat = {6, 34, 62, 0},
153
.ecc = {
154
{.bs = 59, .dw = 37, .ns = 8},
155
{.bs = 133, .dw = 107, .ns = 4},
156
{.bs = 33, .dw = 11, .ns = 12},
157
{.bs = 44, .dw = 20, .ns = 8}
158
}
159
},
160
{ /* Version 14 */
161
.data_bytes = 581,
162
.apat = {6, 26, 46, 66, 0},
163
.ecc = {
164
{.bs = 64, .dw = 40, .ns = 4},
165
{.bs = 145, .dw = 115, .ns = 3},
166
{.bs = 36, .dw = 12, .ns = 11},
167
{.bs = 36, .dw = 16, .ns = 11}
168
}
169
},
170
{ /* Version 15 */
171
.data_bytes = 655,
172
.apat = {6, 26, 48, 70, 0},
173
.ecc = {
174
{.bs = 65, .dw = 41, .ns = 5},
175
{.bs = 109, .dw = 87, .ns = 5},
176
{.bs = 36, .dw = 12, .ns = 11},
177
{.bs = 54, .dw = 24, .ns = 5}
178
}
179
},
180
{ /* Version 16 */
181
.data_bytes = 733,
182
.apat = {6, 26, 50, 74, 0},
183
.ecc = {
184
{.bs = 73, .dw = 45, .ns = 7},
185
{.bs = 122, .dw = 98, .ns = 5},
186
{.bs = 45, .dw = 15, .ns = 3},
187
{.bs = 43, .dw = 19, .ns = 15}
188
}
189
},
190
{ /* Version 17 */
191
.data_bytes = 815,
192
.apat = {6, 30, 54, 78, 0},
193
.ecc = {
194
{.bs = 74, .dw = 46, .ns = 10},
195
{.bs = 135, .dw = 107, .ns = 1},
196
{.bs = 42, .dw = 14, .ns = 2},
197
{.bs = 50, .dw = 22, .ns = 1}
198
}
199
},
200
{ /* Version 18 */
201
.data_bytes = 901,
202
.apat = {6, 30, 56, 82, 0},
203
.ecc = {
204
{.bs = 69, .dw = 43, .ns = 9},
205
{.bs = 150, .dw = 120, .ns = 5},
206
{.bs = 42, .dw = 14, .ns = 2},
207
{.bs = 50, .dw = 22, .ns = 17}
208
}
209
},
210
{ /* Version 19 */
211
.data_bytes = 991,
212
.apat = {6, 30, 58, 86, 0},
213
.ecc = {
214
{.bs = 70, .dw = 44, .ns = 3},
215
{.bs = 141, .dw = 113, .ns = 3},
216
{.bs = 39, .dw = 13, .ns = 9},
217
{.bs = 47, .dw = 21, .ns = 17}
218
}
219
},
220
{ /* Version 20 */
221
.data_bytes = 1085,
222
.apat = {6, 34, 62, 90, 0},
223
.ecc = {
224
{.bs = 67, .dw = 41, .ns = 3},
225
{.bs = 135, .dw = 107, .ns = 3},
226
{.bs = 43, .dw = 15, .ns = 15},
227
{.bs = 54, .dw = 24, .ns = 15}
228
}
229
},
230
{ /* Version 21 */
231
.data_bytes = 1156,
232
.apat = {6, 28, 50, 72, 92, 0},
233
.ecc = {
234
{.bs = 68, .dw = 42, .ns = 17},
235
{.bs = 144, .dw = 116, .ns = 4},
236
{.bs = 46, .dw = 16, .ns = 19},
237
{.bs = 50, .dw = 22, .ns = 17}
238
}
239
},
240
{ /* Version 22 */
241
.data_bytes = 1258,
242
.apat = {6, 26, 50, 74, 98, 0},
243
.ecc = {
244
{.bs = 74, .dw = 46, .ns = 17},
245
{.bs = 139, .dw = 111, .ns = 2},
246
{.bs = 37, .dw = 13, .ns = 34},
247
{.bs = 54, .dw = 24, .ns = 7}
248
}
249
},
250
{ /* Version 23 */
251
.data_bytes = 1364,
252
.apat = {6, 30, 54, 78, 102, 0},
253
.ecc = {
254
{.bs = 75, .dw = 47, .ns = 4},
255
{.bs = 151, .dw = 121, .ns = 4},
256
{.bs = 45, .dw = 15, .ns = 16},
257
{.bs = 54, .dw = 24, .ns = 11}
258
}
259
},
260
{ /* Version 24 */
261
.data_bytes = 1474,
262
.apat = {6, 28, 54, 80, 106, 0},
263
.ecc = {
264
{.bs = 73, .dw = 45, .ns = 6},
265
{.bs = 147, .dw = 117, .ns = 6},
266
{.bs = 46, .dw = 16, .ns = 30},
267
{.bs = 54, .dw = 24, .ns = 11}
268
}
269
},
270
{ /* Version 25 */
271
.data_bytes = 1588,
272
.apat = {6, 32, 58, 84, 110, 0},
273
.ecc = {
274
{.bs = 75, .dw = 47, .ns = 8},
275
{.bs = 132, .dw = 106, .ns = 8},
276
{.bs = 45, .dw = 15, .ns = 22},
277
{.bs = 54, .dw = 24, .ns = 7}
278
}
279
},
280
{ /* Version 26 */
281
.data_bytes = 1706,
282
.apat = {6, 30, 58, 86, 114, 0},
283
.ecc = {
284
{.bs = 74, .dw = 46, .ns = 19},
285
{.bs = 142, .dw = 114, .ns = 10},
286
{.bs = 46, .dw = 16, .ns = 33},
287
{.bs = 50, .dw = 22, .ns = 28}
288
}
289
},
290
{ /* Version 27 */
291
.data_bytes = 1828,
292
.apat = {6, 34, 62, 90, 118, 0},
293
.ecc = {
294
{.bs = 73, .dw = 45, .ns = 22},
295
{.bs = 152, .dw = 122, .ns = 8},
296
{.bs = 45, .dw = 15, .ns = 12},
297
{.bs = 53, .dw = 23, .ns = 8}
298
}
299
},
300
{ /* Version 28 */
301
.data_bytes = 1921,
302
.apat = {6, 26, 50, 74, 98, 122, 0},
303
.ecc = {
304
{.bs = 73, .dw = 45, .ns = 3},
305
{.bs = 147, .dw = 117, .ns = 3},
306
{.bs = 45, .dw = 15, .ns = 11},
307
{.bs = 54, .dw = 24, .ns = 4}
308
}
309
},
310
{ /* Version 29 */
311
.data_bytes = 2051,
312
.apat = {6, 30, 54, 78, 102, 126, 0},
313
.ecc = {
314
{.bs = 73, .dw = 45, .ns = 21},
315
{.bs = 146, .dw = 116, .ns = 7},
316
{.bs = 45, .dw = 15, .ns = 19},
317
{.bs = 53, .dw = 23, .ns = 1}
318
}
319
},
320
{ /* Version 30 */
321
.data_bytes = 2185,
322
.apat = {6, 26, 52, 78, 104, 130, 0},
323
.ecc = {
324
{.bs = 75, .dw = 47, .ns = 19},
325
{.bs = 145, .dw = 115, .ns = 5},
326
{.bs = 45, .dw = 15, .ns = 23},
327
{.bs = 54, .dw = 24, .ns = 15}
328
}
329
},
330
{ /* Version 31 */
331
.data_bytes = 2323,
332
.apat = {6, 30, 56, 82, 108, 134, 0},
333
.ecc = {
334
{.bs = 74, .dw = 46, .ns = 2},
335
{.bs = 145, .dw = 115, .ns = 13},
336
{.bs = 45, .dw = 15, .ns = 23},
337
{.bs = 54, .dw = 24, .ns = 42}
338
}
339
},
340
{ /* Version 32 */
341
.data_bytes = 2465,
342
.apat = {6, 34, 60, 86, 112, 138, 0},
343
.ecc = {
344
{.bs = 74, .dw = 46, .ns = 10},
345
{.bs = 145, .dw = 115, .ns = 17},
346
{.bs = 45, .dw = 15, .ns = 19},
347
{.bs = 54, .dw = 24, .ns = 10}
348
}
349
},
350
{ /* Version 33 */
351
.data_bytes = 2611,
352
.apat = {6, 30, 58, 86, 114, 142, 0},
353
.ecc = {
354
{.bs = 74, .dw = 46, .ns = 14},
355
{.bs = 145, .dw = 115, .ns = 17},
356
{.bs = 45, .dw = 15, .ns = 11},
357
{.bs = 54, .dw = 24, .ns = 29}
358
}
359
},
360
{ /* Version 34 */
361
.data_bytes = 2761,
362
.apat = {6, 34, 62, 90, 118, 146, 0},
363
.ecc = {
364
{.bs = 74, .dw = 46, .ns = 14},
365
{.bs = 145, .dw = 115, .ns = 13},
366
{.bs = 46, .dw = 16, .ns = 59},
367
{.bs = 54, .dw = 24, .ns = 44}
368
}
369
},
370
{ /* Version 35 */
371
.data_bytes = 2876,
372
.apat = {6, 30, 54, 78, 102, 126, 150},
373
.ecc = {
374
{.bs = 75, .dw = 47, .ns = 12},
375
{.bs = 151, .dw = 121, .ns = 12},
376
{.bs = 45, .dw = 15, .ns = 22},
377
{.bs = 54, .dw = 24, .ns = 39}
378
}
379
},
380
{ /* Version 36 */
381
.data_bytes = 3034,
382
.apat = {6, 24, 50, 76, 102, 128, 154},
383
.ecc = {
384
{.bs = 75, .dw = 47, .ns = 6},
385
{.bs = 151, .dw = 121, .ns = 6},
386
{.bs = 45, .dw = 15, .ns = 2},
387
{.bs = 54, .dw = 24, .ns = 46}
388
}
389
},
390
{ /* Version 37 */
391
.data_bytes = 3196,
392
.apat = {6, 28, 54, 80, 106, 132, 158},
393
.ecc = {
394
{.bs = 74, .dw = 46, .ns = 29},
395
{.bs = 152, .dw = 122, .ns = 17},
396
{.bs = 45, .dw = 15, .ns = 24},
397
{.bs = 54, .dw = 24, .ns = 49}
398
}
399
},
400
{ /* Version 38 */
401
.data_bytes = 3362,
402
.apat = {6, 32, 58, 84, 110, 136, 162},
403
.ecc = {
404
{.bs = 74, .dw = 46, .ns = 13},
405
{.bs = 152, .dw = 122, .ns = 4},
406
{.bs = 45, .dw = 15, .ns = 42},
407
{.bs = 54, .dw = 24, .ns = 48}
408
}
409
},
410
{ /* Version 39 */
411
.data_bytes = 3532,
412
.apat = {6, 26, 54, 82, 110, 138, 166},
413
.ecc = {
414
{.bs = 75, .dw = 47, .ns = 40},
415
{.bs = 147, .dw = 117, .ns = 20},
416
{.bs = 45, .dw = 15, .ns = 10},
417
{.bs = 54, .dw = 24, .ns = 43}
418
}
419
},
420
{ /* Version 40 */
421
.data_bytes = 3706,
422
.apat = {6, 30, 58, 86, 114, 142, 170},
423
.ecc = {
424
{.bs = 75, .dw = 47, .ns = 18},
425
{.bs = 148, .dw = 118, .ns = 19},
426
{.bs = 45, .dw = 15, .ns = 20},
427
{.bs = 54, .dw = 24, .ns = 34}
428
}
429
}
430
};
431
432