From 37e20ce1bc80a6eeb9cf113780f2666cbe3e13fd Mon Sep 17 00:00:00 2001 From: RoccoA97 <roccoardino@gmail.com> Date: Tue, 26 Mar 2024 15:10:33 +0100 Subject: [PATCH] Improve suppression of orbit <= 0 --- src/orbit_processor.cc | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/orbit_processor.cc b/src/orbit_processor.cc index 36159863..92937df2 100644 --- a/src/orbit_processor.cc +++ b/src/orbit_processor.cc @@ -105,7 +105,7 @@ OrbitProcessor::FillOrbitMetadata OrbitProcessor::FillOrbit(orbit_trailer *trail // TODO: we might want to return an empty slice in order to avoid unexepected files/events // TODO: to appear and that would let CMSSW crash std::pair<uint32_t, bool> orbit_header = std::pair<uint32_t, bool>{ProcessOrbitHeader(rd_ptr)}; - uint32_t orbit = uint32_t{orbit_header.first}; + uint32_t orbit = uint32_t{orbit_header.first}; if (orbit <= 0) return{0, 0, 0}; //.second is the warning test enable bit rd_ptr += 32; // +32 to account for orbit header @@ -191,6 +191,10 @@ void OrbitProcessor::ProcessSliceImpl(Slice &input, Slice &out) { } meta = FillOrbit(trailer, rd_ptr, wr_ptr, rd_end_ptr, wr_end_ptr); + if (meta.orbit<=0) { + LOG(WARNING) << "Invalid orbit number " << meta.orbit << ". Skipping packet..."; + return; + } orbitCount = meta.counts; ++orbit_per_packet_count; -- GitLab