From af1783a56ec7580ba24f2af35da9947d85b7226b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Thomas=20J=C3=BCrges?= <jurges@astron.nl>
Date: Mon, 4 Feb 2019 11:43:40 +0000
Subject: [PATCH] SW-546:  Introduce MAX_TBB_SPECTRAL_SUBBANDS for error
 checking

---
 RTCP/Cobalt/OutputProc/src/TBB_Frame.h   | 5 +++++
 RTCP/Cobalt/OutputProc/src/TBB_Writer.cc | 2 +-
 2 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/RTCP/Cobalt/OutputProc/src/TBB_Frame.h b/RTCP/Cobalt/OutputProc/src/TBB_Frame.h
index 6866262e683..983e85c5d0a 100644
--- a/RTCP/Cobalt/OutputProc/src/TBB_Frame.h
+++ b/RTCP/Cobalt/OutputProc/src/TBB_Frame.h
@@ -32,6 +32,11 @@ namespace LOFAR
 {
   namespace Cobalt
   {
+      /**
+       * This reflects the fact that LOFAR's TBB boards can produce spectral
+       * time series for a maximum of 487 frequency bands.
+       */
+      const uint32_t MAX_TBB_SPECTRAL_SUBBANDS{487U};
 
     /*
      * Incoming UDP frame format.
diff --git a/RTCP/Cobalt/OutputProc/src/TBB_Writer.cc b/RTCP/Cobalt/OutputProc/src/TBB_Writer.cc
index f8cb2998c1c..8ce5afaaed3 100644
--- a/RTCP/Cobalt/OutputProc/src/TBB_Writer.cc
+++ b/RTCP/Cobalt/OutputProc/src/TBB_Writer.cc
@@ -74,7 +74,7 @@ namespace LOFAR
       if (operatingMode == TBB_SPECTRAL_MODE) {
         vector<unsigned> tbbSubbandList(parset.getUint32Vector("Observation.TBB.TBBsetting.subbandList", true));
         size_t nrSubbands = tbbSubbandList.size();
-        if (nrSubbands == 0 || nrSubbands > MAX_TBB_SPECTRAL_NSAMPLES) {
+        if (nrSubbands == 0 || nrSubbands > MAX_TBB_SPECTRAL_SUBBANDS) {
           throw APSException("TBB: spectral mode selected, but empty or too long Observation.TBB.TBBsetting.subbandList");
         }
         std::sort  (tbbSubbandList.begin(), tbbSubbandList.end());
-- 
GitLab