17 ULong64_t ulStarTsFullIn,
20 UInt_t uStarTrigCmdIn,
23 , fulGdpbTsFull(ulGdpbTsFullIn)
24 , fulStarTsFull(ulStarTsFullIn)
25 , fuStarToken(uStarTokenIn)
26 , fusStarDaqCmd(uStarDaqCmdIn)
27 , fusStarTrigCmd(uStarTrigCmdIn) {}
34 return uThisTs < uOtherTs;
49 std::vector<gdpbv100::FullMessage>
56 std::vector<gdpbv100::FullMessage> vMsgs(4, mCommonData);
59 vMsgs[0].setStarTrigMsgIndex(0);
60 vMsgs[0].setGdpbTsMsbStarA(
63 vMsgs[1].setStarTrigMsgIndex(1);
64 vMsgs[1].setGdpbTsLsbStarB(
66 vMsgs[1].setStarTsMsbStarB(
69 vMsgs[2].setStarTrigMsgIndex(2);
70 vMsgs[2].setStarTsMidStarC(
73 vMsgs[3].setStarTrigMsgIndex(3);
75 vMsgs[3].setStarFillerD();
86 : fbTriggerSet(kFALSE)
89 , fulEventStatusFlags(0)
90 , fuEventSizeBytes(4 * sizeof(ULong64_t))
96 , fusSourceId(sourceIdIn)
97 , fulEventStatusFlags(0)
98 , fuEventSizeBytes(4 * sizeof(ULong64_t))
104 : fbTriggerSet(eventIn.fbTriggerSet)
105 , fTrigger(eventIn.fTrigger)
106 , fusSourceId(eventIn.fusSourceId)
107 , fulEventStatusFlags(eventIn.fulEventStatusFlags)
108 , fuEventSizeBytes(eventIn.fuEventSizeBytes)
109 , fvMsgBuffer(eventIn.fvMsgBuffer) {
137 iOutputSizeBytes = 0;
141 iOutputSizeBytes = 0;
148 iOutputSizeBytes *=
sizeof(ULong64_t);
177 for (UInt_t uMsgIdx = 0; uMsgIdx < uMsgsToRead; uMsgIdx++) {
182 return static_cast<void*
>(
fpulBuff);
186 if (NULL == pBuff || 0 == iInputSizeBytes)
return kFALSE;
188 Int_t iRestBytes = iInputSizeBytes %
sizeof(ULong64_t);
189 Int_t iInputSzLg = iInputSizeBytes /
sizeof(ULong64_t);
193 if (iInputSzLg < 4 || 0 < iRestBytes)
return kFALSE;
199 ULong64_t* pulLongBuff =
static_cast<ULong64_t*
>(pBuff);
200 ULong64_t ulTrgGdpbFullTs = pulLongBuff[0];
201 ULong64_t ulTrgStarFullTs = pulLongBuff[1];
202 UInt_t uStarToken = (pulLongBuff[2] >> 32) & 0xFFF;
203 UInt_t uStarDaqCmdIn = (pulLongBuff[2] >> 16) & 0x00F;
204 UInt_t uStarTrigCmdIn = (pulLongBuff[2]) & 0x00F;
219 UInt_t uMsgsToRead = (iInputSzLg - 4) / 2;
220 for (UInt_t uMsgIdx = 0; uMsgIdx < uMsgsToRead; uMsgIdx++) {
222 pulLongBuff[4 + 2 * uMsgIdx + 1]);
229 std::cout <<
"-------------------------------------------------------"
231 std::cout <<
"Printing CbmTofStarSubevent2019 dump" << std::endl;
238 std::cout <<
"Status flags = " << std::hex << std::setw(16)
243 for (UInt_t uMsgIdx = 0; uMsgIdx <
fvMsgBuffer.size(); uMsgIdx++) {
248 std::cout <<
"-------------------------------------------------------"