CMS 3D CMS Logo

ActivationLut.cc
Go to the documentation of this file.
1 #include <utility>
2 
3 #include "ap_int.h"
5 
6 using namespace emtf::phase2;
7 using namespace emtf::phase2::data;
8 
10  // clang-format off
11  prompt_pt_lut_ = {{
12  8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191,
13  8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191,
14  8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191,
15  8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191,
16  8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8101, 7970, 7842, 7719, 7595, 7479, 7362, 7246, 7137, 7028,
17  6919, 6817, 6715, 6613, 6515, 6417, 6322, 6231, 6141, 6053, 5966, 5879, 5795, 5711, 5631, 5551, 5475, 5399, 5322,
18  5250, 5177, 5104, 5035, 4966, 4897, 4832, 4762, 4701, 4635, 4573, 4512, 4453, 4392, 4333, 4275, 4217, 4162, 4108,
19  4053, 3999, 3948, 3897, 3842, 3795, 3744, 3693, 3646, 3599, 3552, 3504, 3461, 3417, 3370, 3326, 3282, 3242, 3199,
20  3159, 3115, 3075, 3035, 2995, 2959, 2919, 2882, 2842, 2806, 2770, 2733, 2697, 2664, 2628, 2595, 2559, 2526, 2493,
21  2461, 2428, 2395, 2366, 2333, 2301, 2272, 2242, 2210, 2181, 2152, 2124, 2096, 2071, 2043, 2015, 1991, 1963, 1940,
22  1916, 1889, 1865, 1842, 1819, 1796, 1773, 1753, 1730, 1708, 1689, 1666, 1647, 1625, 1606, 1588, 1569, 1547, 1529,
23  1511, 1492, 1474, 1459, 1441, 1424, 1406, 1391, 1374, 1356, 1342, 1327, 1310, 1296, 1282, 1265, 1251, 1237, 1223,
24  1209, 1195, 1181, 1168, 1154, 1141, 1127, 1117, 1103, 1090, 1077, 1066, 1053, 1043, 1030, 1020, 1007, 997, 986, 974,
25  964, 954, 944, 931, 922, 912, 902, 892, 882, 873, 863, 854, 844, 835, 828, 818, 809, 799, 792, 783, 774, 767, 758,
26  749, 742, 733, 726, 718, 711, 702, 695, 689, 680, 674, 667, 658, 652, 646, 639, 631, 624, 618, 612, 605, 599, 593,
27  587, 581, 574, 568, 562, 556, 550, 544, 538, 532, 526, 520, 516, 510, 505, 499, 495, 489, 483, 480, 474, 468, 464,
28  459, 453, 449, 444, 440, 434, 431, 425, 421, 416, 412, 407, 403, 398, 394, 391, 385, 382, 378, 373, 370, 366, 361,
29  357, 354, 350, 345, 342, 338, 335, 330, 327, 323, 320, 317, 313, 310, 307, 302, 298, 295, 292, 289, 285, 282, 279,
30  276, 273, 269, 266, 263, 260, 257, 254, 252, 249, 246, 243, 240, 237, 234, 232, 229, 226, 223, 220, 217, 216, 213,
31  210, 207, 205, 202, 199, 196, 195, 192, 189, 188, 185, 182, 180, 178, 175, 173, 171, 168, 166, 164, 162, 159, 158,
32  155, 152, 151, 148, 147, 144, 143, 140, 139, 136, 135, 132, 131, 128, 127, 124, 123, 120, 119, 116, 115, 114, 111,
33  110, 107, 106, 105, 102, 101, 100, 97, 96, 93, 92, 91, 88, 87, 86, 84, 82, 81, 80, 77, 76, 75, 73, 71, 70, 69, 67,
34  65, 64, 63, 61, 59, 58, 57, 56, 54, 52, 51, 50, 49, 47, 46, 44, 43, 42, 41, 39, 38, 37, 35, 34, 33, 32, 31, 29, 28,
35  27, 25, 24, 23, 22, 21, 20, 19, 18, 16, 15, 14, 13, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,
36  10, 11, 13, 14, 15, 16, 18, 19, 20, 21, 22, 23, 24, 25, 27, 28, 29, 31, 32, 33, 34, 35, 37, 38, 39, 41, 42, 43, 44,
37  46, 47, 49, 50, 51, 52, 54, 56, 57, 58, 59, 61, 63, 64, 65, 67, 69, 70, 71, 73, 75, 76, 77, 80, 81, 82, 84, 86, 87,
38  88, 91, 92, 93, 96, 97, 100, 101, 102, 105, 106, 107, 110, 111, 114, 115, 116, 119, 120, 123, 124, 127, 128, 131,
39  132, 135, 136, 139, 140, 143, 144, 147, 148, 151, 152, 155, 158, 159, 162, 164, 166, 168, 171, 173, 175, 178, 180,
40  182, 185, 188, 189, 192, 195, 196, 199, 202, 205, 207, 210, 213, 216, 217, 220, 223, 226, 229, 232, 234, 237, 240,
41  243, 246, 249, 252, 254, 257, 260, 263, 266, 269, 273, 276, 279, 282, 285, 289, 292, 295, 298, 302, 307, 310, 313,
42  317, 320, 323, 327, 330, 335, 338, 342, 345, 350, 354, 357, 361, 366, 370, 373, 378, 382, 385, 391, 394, 398, 403,
43  407, 412, 416, 421, 425, 431, 434, 440, 444, 449, 453, 459, 464, 468, 474, 480, 483, 489, 495, 499, 505, 510, 516,
44  520, 526, 532, 538, 544, 550, 556, 562, 568, 574, 581, 587, 593, 599, 605, 612, 618, 624, 631, 639, 646, 652, 658,
45  667, 674, 680, 689, 695, 702, 711, 718, 726, 733, 742, 749, 758, 767, 774, 783, 792, 799, 809, 818, 828, 835, 844,
46  854, 863, 873, 882, 892, 902, 912, 922, 931, 944, 954, 964, 974, 986, 997, 1007, 1020, 1030, 1043, 1053, 1066, 1077,
47  1090, 1103, 1117, 1127, 1141, 1154, 1168, 1181, 1195, 1209, 1223, 1237, 1251, 1265, 1282, 1296, 1310, 1327, 1342,
48  1356, 1374, 1391, 1406, 1424, 1441, 1459, 1474, 1492, 1511, 1529, 1547, 1569, 1588, 1606, 1625, 1647, 1666, 1689,
49  1708, 1730, 1753, 1773, 1796, 1819, 1842, 1865, 1889, 1916, 1940, 1963, 1991, 2015, 2043, 2071, 2096, 2124, 2152,
50  2181, 2210, 2242, 2272, 2301, 2333, 2366, 2395, 2428, 2461, 2493, 2526, 2559, 2595, 2628, 2664, 2697, 2733, 2770,
51  2806, 2842, 2882, 2919, 2959, 2995, 3035, 3075, 3115, 3159, 3199, 3242, 3282, 3326, 3370, 3417, 3461, 3504, 3552,
52  3599, 3646, 3693, 3744, 3795, 3842, 3897, 3948, 3999, 4053, 4108, 4162, 4217, 4275, 4333, 4392, 4453, 4512, 4573,
53  4635, 4701, 4762, 4832, 4897, 4966, 5035, 5104, 5177, 5250, 5322, 5399, 5475, 5551, 5631, 5711, 5795, 5879, 5966,
54  6053, 6141, 6231, 6322, 6417, 6515, 6613, 6715, 6817, 6919, 7028, 7137, 7246, 7362, 7479, 7595, 7719, 7842, 7970,
55  8101, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191,
56  8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191,
57  8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191,
58  8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191,
59  8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191
60  }};
61 
62  disp_pt_lut_ = {{
63  8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191,
64  8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8187,
65  7954, 7733, 7522, 7322, 7132, 6949, 6777, 6610, 6453, 6301, 6155, 6016, 5882, 5753, 5629, 5511, 5397, 5285, 5179,
66  5076, 4978, 4881, 4789, 4699, 4612, 4528, 4447, 4368, 4292, 4218, 4146, 4075, 4008, 3942, 3878, 3815, 3754, 3695,
67  3638, 3581, 3527, 3474, 3422, 3371, 3322, 3274, 3227, 3181, 3136, 3092, 3050, 3007, 2967, 2927, 2887, 2849, 2812,
68  2774, 2739, 2704, 2669, 2635, 2602, 2569, 2538, 2507, 2477, 2446, 2416, 2388, 2359, 2331, 2304, 2278, 2251, 2225,
69  2200, 2175, 2150, 2126, 2102, 2079, 2056, 2032, 2011, 1989, 1967, 1946, 1926, 1905, 1885, 1865, 1845, 1826, 1807,
70  1788, 1770, 1752, 1735, 1716, 1700, 1682, 1665, 1648, 1632, 1616, 1599, 1584, 1569, 1553, 1538, 1523, 1509, 1494,
71  1481, 1466, 1452, 1438, 1424, 1412, 1398, 1386, 1372, 1359, 1347, 1334, 1322, 1310, 1298, 1287, 1274, 1263, 1252,
72  1240, 1229, 1218, 1208, 1197, 1185, 1175, 1165, 1154, 1144, 1134, 1124, 1114, 1105, 1095, 1085, 1076, 1066, 1058,
73  1049, 1039, 1030, 1021, 1013, 1004, 995, 988, 979, 970, 963, 954, 946, 938, 930, 923, 915, 906, 899, 891, 884, 876,
74  870, 863, 855, 848, 841, 834, 826, 820, 814, 806, 800, 794, 786, 780, 774, 767, 761, 755, 749, 742, 736, 730, 724,
75  719, 712, 706, 700, 695, 689, 684, 677, 672, 666, 661, 656, 650, 645, 640, 635, 629, 624, 619, 614, 609, 604, 599,
76  594, 589, 584, 579, 575, 570, 565, 560, 556, 551, 546, 542, 537, 532, 528, 523, 520, 515, 511, 506, 502, 498, 493,
77  490, 486, 481, 477, 473, 470, 465, 461, 457, 453, 450, 446, 442, 438, 435, 431, 427, 423, 420, 416, 412, 408, 405,
78  401, 397, 395, 391, 387, 383, 381, 377, 373, 371, 367, 363, 361, 357, 353, 351, 347, 345, 341, 338, 335, 332, 329,
79  326, 322, 320, 316, 314, 311, 308, 305, 303, 299, 297, 294, 291, 288, 286, 284, 280, 278, 275, 273, 269, 267, 264,
80  262, 260, 257, 255, 252, 249, 247, 244, 242, 239, 237, 235, 232, 230, 228, 225, 223, 221, 218, 216, 214, 213, 210,
81  208, 206, 203, 201, 199, 198, 195, 193, 191, 188, 186, 185, 183, 180, 178, 177, 175, 172, 170, 169, 167, 164, 163,
82  161, 159, 158, 155, 153, 152, 150, 148, 146, 144, 143, 141, 140, 138, 135, 134, 132, 131, 129, 128, 125, 124, 122,
83  121, 119, 118, 115, 114, 112, 111, 109, 108, 106, 104, 103, 101, 100, 98, 97, 96, 94, 93, 91, 89, 88, 86, 85, 84,
84  82, 81, 80, 77, 76, 75, 74, 72, 71, 70, 68, 67, 66, 65, 62, 61, 60, 59, 57, 56, 55, 54, 53, 51, 50, 49, 48, 47, 45,
85  43, 42, 41, 40, 39, 37, 36, 35, 34, 33, 32, 31, 30, 28, 27, 26, 25, 24, 23, 22, 21, 20, 18, 17, 15, 14, 13, 12, 11,
86  10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17, 18, 20, 21, 22, 23, 24, 25,
87  26, 27, 28, 30, 31, 32, 33, 34, 35, 36, 37, 39, 40, 41, 42, 43, 45, 47, 48, 49, 50, 51, 53, 54, 55, 56, 57, 59, 60,
88  61, 62, 65, 66, 67, 68, 70, 71, 72, 74, 75, 76, 77, 80, 81, 82, 84, 85, 86, 88, 89, 91, 93, 94, 96, 97, 98, 100,
89  101, 103, 104, 106, 108, 109, 111, 112, 114, 115, 118, 119, 121, 122, 124, 125, 128, 129, 131, 132, 134, 135, 138,
90  140, 141, 143, 144, 146, 148, 150, 152, 153, 155, 158, 159, 161, 163, 164, 167, 169, 170, 172, 175, 177, 178, 180,
91  183, 185, 186, 188, 191, 193, 195, 198, 199, 201, 203, 206, 208, 210, 213, 214, 216, 218, 221, 223, 225, 228, 230,
92  232, 235, 237, 239, 242, 244, 247, 249, 252, 255, 257, 260, 262, 264, 267, 269, 273, 275, 278, 280, 284, 286, 288,
93  291, 294, 297, 299, 303, 305, 308, 311, 314, 316, 320, 322, 326, 329, 332, 335, 338, 341, 345, 347, 351, 353, 357,
94  361, 363, 367, 371, 373, 377, 381, 383, 387, 391, 395, 397, 401, 405, 408, 412, 416, 420, 423, 427, 431, 435, 438,
95  442, 446, 450, 453, 457, 461, 465, 470, 473, 477, 481, 486, 490, 493, 498, 502, 506, 511, 515, 520, 523, 528, 532,
96  537, 542, 546, 551, 556, 560, 565, 570, 575, 579, 584, 589, 594, 599, 604, 609, 614, 619, 624, 629, 635, 640, 645,
97  650, 656, 661, 666, 672, 677, 684, 689, 695, 700, 706, 712, 719, 724, 730, 736, 742, 749, 755, 761, 767, 774, 780,
98  786, 794, 800, 806, 814, 820, 826, 834, 841, 848, 855, 863, 870, 876, 884, 891, 899, 906, 915, 923, 930, 938, 946,
99  954, 963, 970, 979, 988, 995, 1004, 1013, 1021, 1030, 1039, 1049, 1058, 1066, 1076, 1085, 1095, 1105, 1114, 1124,
100  1134, 1144, 1154, 1165, 1175, 1185, 1197, 1208, 1218, 1229, 1240, 1252, 1263, 1274, 1287, 1298, 1310, 1322, 1334,
101  1347, 1359, 1372, 1386, 1398, 1412, 1424, 1438, 1452, 1466, 1481, 1494, 1509, 1523, 1538, 1553, 1569, 1584, 1599,
102  1616, 1632, 1648, 1665, 1682, 1700, 1716, 1735, 1752, 1770, 1788, 1807, 1826, 1845, 1865, 1885, 1905, 1926, 1946,
103  1967, 1989, 2011, 2032, 2056, 2079, 2102, 2126, 2150, 2175, 2200, 2225, 2251, 2278, 2304, 2331, 2359, 2388, 2416,
104  2446, 2477, 2507, 2538, 2569, 2602, 2635, 2669, 2704, 2739, 2774, 2812, 2849, 2887, 2927, 2967, 3007, 3050, 3092,
105  3136, 3181, 3227, 3274, 3322, 3371, 3422, 3474, 3527, 3581, 3638, 3695, 3754, 3815, 3878, 3942, 4008, 4075, 4146,
106  4218, 4292, 4368, 4447, 4528, 4612, 4699, 4789, 4881, 4978, 5076, 5179, 5285, 5397, 5511, 5629, 5753, 5882, 6016,
107  6155, 6301, 6453, 6610, 6777, 6949, 7132, 7322, 7522, 7733, 7954, 8187, 8191, 8191, 8191, 8191, 8191, 8191, 8191,
108  8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191,
109  8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191, 8191
110  }};
111 
112  rels_lut_ = {{
113  64, 64, 64, 65, 65, 65, 66, 66, 66, 67, 67, 68, 68, 68, 69, 69, 69, 70, 70, 70, 71, 71, 71, 72, 72, 73, 73, 73, 74,
114  74, 74, 75, 75, 75, 76, 76, 76, 77, 77, 78, 78, 78, 79, 79, 79, 80, 80, 80, 81, 81, 81, 82, 82, 82, 83, 83, 83, 84,
115  84, 84, 85, 85, 85, 86, 86, 86, 87, 87, 87, 87, 88, 88, 88, 89, 89, 89, 90, 90, 90, 91, 91, 91, 91, 92, 92, 92, 93,
116  93, 93, 93, 94, 94, 94, 95, 95, 95, 95, 96, 96, 96, 96, 97, 97, 97, 98, 98, 98, 98, 99, 99, 99, 99, 100, 100, 100,
117  100, 101, 101, 101, 101, 101, 102, 102, 102, 102, 103, 103, 103, 103, 104, 104, 104, 104, 104, 105, 105, 105, 105,
118  105, 106, 106, 106, 106, 106, 107, 107, 107, 107, 107, 108, 108, 108, 108, 108, 109, 109, 109, 109, 109, 109, 110,
119  110, 110, 110, 110, 110, 111, 111, 111, 111, 111, 111, 112, 112, 112, 112, 112, 112, 112, 113, 113, 113, 113, 113,
120  113, 113, 114, 114, 114, 114, 114, 114, 114, 115, 115, 115, 115, 115, 115, 115, 115, 116, 116, 116, 116, 116, 116,
121  116, 116, 116, 117, 117, 117, 117, 117, 117, 117, 117, 117, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118,
122  119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
123  120, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 122, 122, 122, 122, 122, 122,
124  122, 122, 122, 122, 122, 122, 122, 122, 122, 122, 122, 122, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123,
125  123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124,
126  124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 125, 125, 125, 125, 125,
127  125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125,
128  125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 126, 126, 126, 126, 126, 126,
129  126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
130  126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
131  126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
132  126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 127,
133  127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127,
134  127, 127, 127, 127, 127, 127, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
135  0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
136  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
137  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
138  2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
139  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
140  4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7,
141  7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 10, 10, 10, 10, 10, 10,
142  10, 10, 10, 11, 11, 11, 11, 11, 11, 11, 11, 11, 12, 12, 12, 12, 12, 12, 12, 12, 13, 13, 13, 13, 13, 13, 13, 14, 14,
143  14, 14, 14, 14, 14, 15, 15, 15, 15, 15, 15, 15, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 17, 17, 18, 18, 18, 18, 18,
144  18, 19, 19, 19, 19, 19, 20, 20, 20, 20, 20, 21, 21, 21, 21, 21, 22, 22, 22, 22, 22, 23, 23, 23, 23, 23, 24, 24, 24,
145  24, 25, 25, 25, 25, 26, 26, 26, 26, 26, 27, 27, 27, 27, 28, 28, 28, 28, 29, 29, 29, 29, 30, 30, 30, 31, 31, 31, 31,
146  32, 32, 32, 32, 33, 33, 33, 34, 34, 34, 34, 35, 35, 35, 36, 36, 36, 36, 37, 37, 37, 38, 38, 38, 39, 39, 39, 40, 40,
147  40, 40, 41, 41, 41, 42, 42, 42, 43, 43, 43, 44, 44, 44, 45, 45, 45, 46, 46, 46, 47, 47, 47, 48, 48, 48, 49, 49, 49,
148  50, 50, 51, 51, 51, 52, 52, 52, 53, 53, 53, 54, 54, 54, 55, 55, 56, 56, 56, 57, 57, 57, 58, 58, 58, 59, 59, 59, 60,
149  60, 61, 61, 61, 62, 62, 62, 63, 63
150  }};
151 
152  dxy_lut_ = {{
153  0, 0, 2, 2, 2, 2, 4, 4, 4, 4, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 10, 10, 10, 10, 11, 11, 11, 12, 12, 12, 12, 13,
154  13, 13, 13, 14, 14, 14, 14, 15, 15, 15, 15, 16, 16, 16, 16, 18, 18, 18, 19, 19, 19, 19, 20, 20, 20, 20, 22, 22, 22,
155  22, 24, 24, 24, 24, 26, 26, 26, 26, 28, 28, 28, 28, 30, 30, 30, 33, 33, 33, 33, 36, 36, 36, 36, 39, 39, 39, 39, 43,
156  43, 43, 43, 47, 47, 47, 47, 51, 51, 51, 51, 56, 56, 56, 62, 62, 62, 62, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
157  63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
158  63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
159  63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
160  63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
161  63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
162  63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
163  63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
164  63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
165  63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
166  63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
167  63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
168  63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
169  63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
170  63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64,
171  -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64,
172  -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64,
173  -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64,
174  -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64,
175  -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64,
176  -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64,
177  -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64,
178  -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64,
179  -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64,
180  -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64,
181  -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64,
182  -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64,
183  -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64,
184  -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64,
185  -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64,
186  -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64,
187  -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, -64,
188  -62, -62, -62, -62, -56, -56, -56, -51, -51, -51, -51, -47, -47, -47, -47, -43, -43, -43, -43, -39, -39, -39, -39,
189  -36, -36, -36, -36, -33, -33, -33, -33, -30, -30, -30, -28, -28, -28, -28, -26, -26, -26, -26, -24, -24, -24, -24,
190  -22, -22, -22, -22, -20, -20, -20, -20, -19, -19, -19, -19, -18, -18, -18, -16, -16, -16, -16, -15, -15, -15, -15,
191  -14, -14, -14, -14, -13, -13, -13, -13, -12, -12, -12, -12, -11, -11, -11, -10, -10, -10, -10, -8, -8, -8, -8, -7,
192  -7, -7, -7, -6, -6, -6, -6, -4, -4, -4, -4, -2, -2, -2, -2, 0
193  }};
194  // clang-format on
195 }
196 
198  // Do Nothing
199 }
200 
202  // Do Nothing
203 }
204 
206  ap_uint<10> bin = address.to_string(AP_HEX).c_str();
207  return prompt_pt_lut_[bin];
208 }
209 
211  ap_uint<10> bin = address.to_string(AP_HEX).c_str();
212  return disp_pt_lut_[bin];
213 }
214 
216  ap_uint<10> bin = address.to_string(AP_HEX).c_str();
217  return rels_lut_[bin];
218 }
219 
221  ap_uint<10> bin = address.to_string(AP_HEX).c_str();
222  return dxy_lut_[bin];
223 }
std::vector< trk_dxy_t > dxy_lut_
Definition: ActivationLut.h:31
ap_uint< 13 > trk_pt_t
Definition: EMTFTypes.h:103
std::vector< trk_rels_t > rels_lut_
Definition: ActivationLut.h:30
void update(const edm::Event &, const edm::EventSetup &)
ap_int< 10 > trk_nn_address_t
Definition: EMTFTypes.h:114
std::vector< trk_pt_t > prompt_pt_lut_
Definition: ActivationLut.h:28
ap_int< 7 > trk_dxy_t
Definition: EMTFTypes.h:105
const trk_pt_t & lookupPromptPt(const trk_nn_address_t &) const
const trk_pt_t & lookupDispPt(const trk_nn_address_t &) const
const trk_dxy_t & lookupDxy(const trk_nn_address_t &) const
std::vector< trk_pt_t > disp_pt_lut_
Definition: ActivationLut.h:29
const trk_rels_t & lookupRels(const trk_nn_address_t &) const
ap_uint< 7 > trk_rels_t
Definition: EMTFTypes.h:104