aboutsummaryrefslogtreecommitdiff
path: root/lpg/libqr/capacity.c
blob: 4b513af22d9f41fee0f644a3a02b3071c01a0008 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
/* FIXME: don't like big tables of data */

const int QR_DATA_WORD_COUNT[40][4] = {
          19,   16,   13,    9,
          34,   28,   22,   16,
          55,   44,   34,   26,
          80,   64,   48,   36,
         108,   86,   62,   46,
         136,  108,   76,   60,
         156,  124,   88,   66,
         194,  154,  110,   86,
         232,  182,  132,  100,
         274,  216,  154,  122,
         324,  254,  180,  140,
         370,  290,  206,  158,
         428,  334,  244,  180,
         461,  365,  261,  197,
         523,  415,  295,  223,
         589,  453,  325,  253,
         647,  507,  367,  283,
         721,  563,  397,  313,
         795,  627,  445,  341,
         861,  669,  485,  385,
         932,  714,  512,  406,
        1006,  782,  568,  442,
        1094,  860,  614,  464,
        1174,  914,  664,  514,
        1276, 1000,  718,  538,
        1370, 1062,  754,  596,
        1468, 1128,  808,  628,
        1531, 1193,  871,  661,
        1631, 1267,  911,  701,
        1735, 1373,  985,  745,
        1845, 1455, 1033,  793,
        1955, 1541, 1115,  845,
        2071, 1631, 1171,  901,
        2191, 1725, 1231,  961,
        2306, 1812, 1286,  986,
        2434, 1914, 1351, 1054,
        2566, 1992, 1426, 1096,
        2812, 2216, 1582, 1222,
        2956, 2334, 1666, 1276
};

/* I'm sure we can calculate these values */
const int QR_RS_BLOCK_COUNT[40][4][2] = {
         1,  0,  1,  0,  1,  0,  1,  0, /*  1 */
         1,  0,  1,  0,  1,  0,  1,  0, /*  2 */
         1,  0,  1,  0,  2,  0,  2,  0, /*  3 */
         1,  0,  2,  0,  2,  0,  4,  0, /*  4 */
         1,  0,  2,  0,  2,  0,  2,  0,
         2,  0,  4,  0,  4,  0,  4,  0,
         2,  0,  4,  0,  2,  4,  4,  1,
         2,  0,  2,  2,  4,  2,  4,  2, /*  8 */
         2,  0,  3,  2,  4,  4,  4,  4,
         2,  2,  4,  1,  6,  2,  6,  2,
         4,  0,  1,  4,  4,  4,  3,  8,
         2,  2,  6,  2,  4,  6,  7,  4,
         4,  0,  8,  1,  8,  4, 12,  4,
         3,  1,  4,  5, 11,  5, 11,  5, /* 14 */
         5,  1,  5,  5,  5,  7, 11,  7,
         5,  1,  7,  3, 15,  2,  3, 13,
         1,  5, 10,  1,  1, 15,  2, 17,
         5,  1,  9,  4, 17,  1,  2, 19,
         3,  4,  3, 11, 17,  4,  9, 16, /* 19 */
         3,  5,  3, 13, 15,  5, 15, 10,
         4,  4, 17,  0, 17,  6, 19,  6,
         2,  7, 17,  0,  7, 16, 34,  0,
         4,  5,  4, 14, 11, 14, 16, 14,
         6,  4,  6, 14, 11, 16, 30,  2,
         8,  4,  8, 13,  7, 22, 22, 13, /* 25 */
        10,  2, 19,  4, 28,  6, 33,  4,
         8,  4, 22,  3,  8, 26, 12, 28,
         3, 10,  3, 23,  4, 31, 11, 31,
         7,  7, 21,  7,  1, 37, 19, 26,
         5, 10, 19, 10, 15, 25, 23, 25, /* 30 */
        13,  3,  2, 29, 42,  1, 23, 28,
        17,  0, 10, 23, 10, 35, 19, 35,
        17,  1, 14, 21, 29, 19, 11, 46,
        13,  6, 14, 23, 44,  7, 59,  1,
        12,  7, 12, 26, 39, 14, 22, 41, /* 35 */
         6, 14,  6, 34, 46, 10,  2, 64,
        17,  4, 29, 14, 49, 10, 24, 46,
         4, 18, 13, 32, 48, 14, 42, 32,
        20,  4, 40,  7, 43, 22, 10, 67,
        19,  6, 18, 31, 34, 34, 20, 61 /* 40 */
};