From e803fc447001ebf91b5f27fff58c895dcd476a11 Mon Sep 17 00:00:00 2001 From: "Stephen A. Wood" Date: Wed, 10 Feb 2021 11:39:47 -0500 Subject: [PATCH] Fadc250 sample mode. Don't return extra sample when count is odd. --- hana_decode/Fadc250Module.cxx | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/hana_decode/Fadc250Module.cxx b/hana_decode/Fadc250Module.cxx index 27ba1bc6..6b378501 100644 --- a/hana_decode/Fadc250Module.cxx +++ b/hana_decode/Fadc250Module.cxx @@ -837,7 +837,9 @@ namespace Decoder { PopulateDataVector(fPulseData[fadc_data.chan].samples, sample_1); // Sample 1 fadc_data.invalid_samples |= invalid_1; // Invalid samples fadc_data.overflow = (sample_1 >> 12) & 0x1; // Sample 1 overflow bit - if((sample_1 + 2) == fadc_data.win_width && invalid_2) break; // Skip last sample if flagged as invalid + if(invalid_2) { // Skip last sample if not expected and flagged as invalid + if(fPulseData[fadc_data.chan].samples.size() == fadc_data.win_width) break; + } PopulateDataVector(fPulseData[fadc_data.chan].samples, sample_2); // Sample 2 fadc_data.invalid_samples |= invalid_2; // Invalid samples @@ -889,7 +891,9 @@ namespace Decoder { PopulateDataVector(fPulseData[fadc_data.chan].samples, sample_1); // Sample 1 fadc_data.invalid_samples |= invalid_1; // Invalid samples fadc_data.overflow = (sample_1 >> 12) & 0x1; // Sample 1 overflow bit - if ((sample_1 + 2) == fadc_data.win_width && invalid_2) break; // Skip last sample if flagged as invalid + if(invalid_2) { // Skip last sample if not expected and flagged as invalid + if(fPulseData[fadc_data.chan].samples.size() == fadc_data.win_width) break; + } PopulateDataVector(fPulseData[fadc_data.chan].samples, sample_2); // Sample 2 fadc_data.invalid_samples |= invalid_2; // Invalid samples