14 auto supercells = inFrame;
20 for(
auto&
icell:supercells)
29 dataToLoad.at(0) = (bcId56 << 8) | (supercells.at(0) <<10) |
30 (supercells.at(1) << 20) | (bcId34 << 30);
31 dataToLoad.at(1) = supercells.at(2) | (supercells.at(3) << 10) |
32 (supercells.at(4) << 20) | (((supercells.at(19) >>8) & 0x3) << 30);
33 dataToLoad.at(2) = supercells.at(5) | (supercells.at(6) << 10) |
34 (supercells.at(7) << 20) | (((supercells.at(19) >>6) & 0x3) << 30);
35 dataToLoad.at(3) = supercells.at(8) | (supercells.at(9) << 10) |
36 (supercells.at(10) << 20) | (((supercells.at(19) >>4) & 0x3) << 30);
37 dataToLoad.at(4) = supercells.at(11) | (supercells.at(12) << 10) |
38 (supercells.at(13) << 20) | (((supercells.at(19) >>2) & 0x3) << 30);
39 dataToLoad.at(5) = supercells.at(14) | (supercells.at(15) << 10) |
40 (supercells.at(16) << 20) | (((supercells.at(19) ) & 0x3) << 30);
41 dataToLoad.at(6) = supercells.at(17) | (supercells.at(18) << 10)| bcId02 << 20;
49 dataToLoad.at(0) =
K_28_5 | dataToLoad.at(0) ;
50 dataToLoad[6] = dataToLoad[6] | ( myCRCReminder << 23) ;
57 myDataWord latome_id = supercells.at(0) & 0xff;
58 myDataWord latome_src_id = supercells.at(1) & 0xffffffff;
62 dataToLoad.at(0) = (fiber_id << 16) | (latome_id << 24);
63 dataToLoad.at(1) = latome_src_id;
64 dataToLoad.at(6) =
bcId;
66 dataToLoad.at(0) = (
K_28_0 << 8) | dataToLoad.at(0) ;
74 dataToLoad.at(0) =
K_28_5 | dataToLoad.at(0) ;
75 dataToLoad[6] = dataToLoad[6] | ( myCRCReminder << 23) ;
94 controlWords.at(0) = 0x1;
98 controlWords.at(0) = 0x3;
109 auto inputData = encodedData;
117 inputData.at(0) = inputData.at(0) & 0xffffff00;
125 inputData.at(0) = inputData.at(0) & 0xffffff00;
134 return (CRCCheck == 0);
145 myDataWord bcId02 = (encodedData.at(6) >> 20 ) & 0x7;
146 myDataWord bcId34 = (encodedData.at(0) >> 30 ) & 0x3;
147 myDataWord bcId56 = (encodedData.at(0) >> 8 ) & 0x3;
149 BcNumber = bcId02 | (bcId34 << 3) | (bcId56 << 5);
154 BcNumber = encodedData.at(6) & 0xfff;
170 std::vector<myDataWord> unpackedData;
184 supercells.at(0) = (encodedData.at(0) >> 10) & 0x3ff;
185 supercells.at(1) = (encodedData.at(0) >> 20) & 0x3ff;
186 supercells.at(2) = (encodedData.at(1) ) & 0x3ff;
187 supercells.at(3) = (encodedData.at(1) >> 10) & 0x3ff;
188 supercells.at(4) = (encodedData.at(1) >> 20) & 0x3ff;
189 supercells.at(5) = (encodedData.at(2) ) & 0x3ff;
190 supercells.at(6) = (encodedData.at(2) >> 10) & 0x3ff;
191 supercells.at(7) = (encodedData.at(2) >> 20) & 0x3ff;
192 supercells.at(8) = (encodedData.at(3) ) & 0x3ff;
193 supercells.at(9) = (encodedData.at(3) >> 10) & 0x3ff;
194 supercells.at(10) = (encodedData.at(3) >> 20) & 0x3ff;
195 supercells.at(11) = (encodedData.at(4) ) & 0x3ff;
196 supercells.at(12) = (encodedData.at(4) >> 10) & 0x3ff;
197 supercells.at(13) = (encodedData.at(4) >> 20) & 0x3ff;
198 supercells.at(14) = (encodedData.at(5) ) & 0x3ff;
199 supercells.at(15) = (encodedData.at(5) >> 10) & 0x3ff;
200 supercells.at(16) = (encodedData.at(5) >> 20) & 0x3ff;
201 supercells.at(17) = (encodedData.at(6) ) & 0x3ff;
202 supercells.at(18) = (encodedData.at(6) >> 10) & 0x3ff;
203 supercells.at(19) = ((encodedData.at(5) >> 30) & 0x3) |
204 ((encodedData.at(4) >> 30) & 0x3) << 2 |
205 ((encodedData.at(3) >> 30) & 0x3) << 4 |
206 ((encodedData.at(2) >> 30) & 0x3) << 6 |
207 ((encodedData.at(1) >> 30) & 0x3) << 8 ;
208 unpackedData=supercells;
213 myDataWord latome_id = (encodedData.at(0) >> 24) & 0xff;
214 myDataWord latome_src_id = encodedData.at(1) & 0xffffffff;
215 myDataWord fiber_id = (encodedData.at(0) >> 16) & 0x3f;
217 unpackedData.push_back(latome_id);
218 unpackedData.push_back(latome_src_id);
219 unpackedData.push_back(fiber_id);