Skip to content

Commit 63c42d3

Browse files
committed
Fix payloadIndex, ignore writing DistSTF by default, extra verbose output
1 parent bd17148 commit 63c42d3

1 file changed

Lines changed: 14 additions & 7 deletions

File tree

Detectors/Raw/TFReaderDD/src/RawTFDumpSpec.cxx

Lines changed: 14 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -255,6 +255,7 @@ void RawTFDump::run(ProcessingContext& pc)
255255
try {
256256
size_t lTFSizeInFile = getTFSizeInFile();
257257
SubTimeFrameFileMeta lTFFileMeta(lTFSizeInFile);
258+
lTFFileMeta.mWriteTimeMs = mTimingInfo.creation;
258259

259260
mFile << lTFFileMeta; // Write DataHeader + SubTimeFrameFileMeta
260261
mFile << mTFDataIndex; // Write DataHeader + SubTimeFrameFileDataIndex
@@ -265,6 +266,10 @@ void RawTFDump::run(ProcessingContext& pc)
265266
const auto& dataPtr = mTFData[lEntry + part];
266267
DataHeader hdToWrite = *reinterpret_cast<const DataHeader*>(dataPtr.first); // make a local DataHeader copy to clear flagsNextHeader bit
267268
hdToWrite.flagsNextHeader = 0;
269+
hdToWrite.splitPayloadIndex = part;
270+
if (mVerbose > 2) {
271+
LOGP(info, "Writing part:{}/{} of {} | TFCounter:{} part{}/{}", part, lCnt, DataSpecUtils::describe(OutputSpec{hdToWrite.dataOrigin, hdToWrite.dataDescription, hdToWrite.subSpecification}), hdToWrite.firstTForbit, hdToWrite.splitPayloadIndex, hdToWrite.splitPayloadParts);
272+
}
268273
buffered_write(reinterpret_cast<const char*>(&hdToWrite), sizeof(DataHeader));
269274
buffered_write(dataPtr.second, hdToWrite.payloadSize);
270275
}
@@ -519,10 +524,11 @@ void RawTFDump::prepareTFForWriting(ProcessingContext& pc)
519524
LOGP(error, "Failed to extract header");
520525
continue;
521526
}
522-
if (dh->subSpecification == 0xdeadbeef && mRejectDEADBEEF) {
523-
continue;
524-
}
525-
if (dh->dataOrigin == o2::header::gDataOriginFLP && dh->dataDescription == o2::header::gDataDescriptionDISTSTF && mRejectDistSTF) {
527+
if ((dh->subSpecification == 0xdeadbeef && mRejectDEADBEEF) ||
528+
(dh->dataOrigin == o2::header::gDataOriginFLP && dh->dataDescription == o2::header::gDataDescriptionDISTSTF && mRejectDistSTF)) {
529+
if (mVerbose > 2) {
530+
LOGP(info, "Rejecting {}", DataSpecUtils::describe(OutputSpec{dh->dataOrigin, dh->dataDescription, dh->subSpecification}));
531+
}
526532
continue;
527533
}
528534
const auto lHdrDataSize = sizeof(DataHeader) + dh->payloadSize;
@@ -536,9 +542,10 @@ void RawTFDump::prepareTFForWriting(ProcessingContext& pc)
536542
lCnt++;
537543
mTFData.push_back({ref.header, ref.payload});
538544
if (mVerbose > 2) {
539-
LOGP(info, "{}, part: {} of {}, payload {}, 1stTFOrbit: {} TF: {}",
545+
const auto* dph = DataRefUtils::getHeader<DataProcessingHeader*>(ref);
546+
LOGP(info, "{}, part: {} of {}, payload {}, 1stTFOrbit: {} TF: {}, creation: {} | counter:{} size:{} entry:{}",
540547
DataSpecUtils::describe(OutputSpec{dh->dataOrigin, dh->dataDescription, dh->subSpecification}),
541-
dh->splitPayloadIndex, dh->splitPayloadParts, dh->payloadSize, dh->firstTForbit, dh->tfCounter);
548+
dh->splitPayloadIndex, dh->splitPayloadParts, dh->payloadSize, dh->firstTForbit, dh->tfCounter, dph ? dph->creation : -1UL, lCnt, lSize, lEntry);
542549
}
543550
}
544551

@@ -553,7 +560,7 @@ void RawTFDump::prepareTFForWriting(ProcessingContext& pc)
553560

554561
OutputSpec spec{eq.mDataOrigin, eq.mDataDescription, eq.mSubSpecification};
555562
if (mVerbose > 1) {
556-
LOGP(info, "{} : {} parts of size {} | offset: {}", DataSpecUtils::describe(spec), lCnt, lSize, lCurrOff);
563+
LOGP(info, "{} : {} parts of size {} entry {}| offset: {}", DataSpecUtils::describe(spec), lCnt, lSize, lEntry, lCurrOff);
557564
}
558565
mTFDataIndex.AddStfElement(eq, lCnt, lCurrOff, lSize);
559566
lCurrOff += lSize;

0 commit comments

Comments
 (0)