From 95ed1d2573325e2be3bb84e973e1de1a472fe09a Mon Sep 17 00:00:00 2001
From: Jan David Mol <mol@astron.nl>
Date: Mon, 1 Apr 2013 08:33:49 +0000
Subject: [PATCH] Task #4315: Slightly improved interface

---
 RTCP/Cobalt/InputProc/src/Delays/Delays.cc |  9 +++++----
 RTCP/Cobalt/InputProc/src/Delays/Delays.h  | 15 ++++++---------
 2 files changed, 11 insertions(+), 13 deletions(-)

diff --git a/RTCP/Cobalt/InputProc/src/Delays/Delays.cc b/RTCP/Cobalt/InputProc/src/Delays/Delays.cc
index 2cc1bcdad6e..466ae68a720 100644
--- a/RTCP/Cobalt/InputProc/src/Delays/Delays.cc
+++ b/RTCP/Cobalt/InputProc/src/Delays/Delays.cc
@@ -46,9 +46,13 @@ namespace LOFAR
 
     //##----------------  Public methods  ----------------##//
 
-    Delays::Delays(const Parset &parset, const std::string &stationName, const TimeStamp &startTime)
+    Delays::Delays(const Parset &parset, const std::string &stationName, const TimeStamp &startTime, size_t blockSize)
       :
       parset(parset),
+      itsStationName(stationName),
+      itsStartTime(startTime),
+      blockSize(blockSize),
+
       stop(false),
       // we need an extra entry for the central beam
       itsBuffer(bufferSize),
@@ -56,9 +60,6 @@ namespace LOFAR
       tail(0),
       bufferFree(bufferSize),
       bufferUsed(0),
-      itsStartTime(startTime),
-      blockSize(parset.nrSamplesPerSubband()),
-      itsStationName(stationName),
       itsDelayTimer("delay producer", true, true)
     {
     }
diff --git a/RTCP/Cobalt/InputProc/src/Delays/Delays.h b/RTCP/Cobalt/InputProc/src/Delays/Delays.h
index 36406c12385..ac6062e889f 100644
--- a/RTCP/Cobalt/InputProc/src/Delays/Delays.h
+++ b/RTCP/Cobalt/InputProc/src/Delays/Delays.h
@@ -85,7 +85,7 @@ namespace LOFAR
     class Delays
     {
     public:
-      Delays(const Parset &ps, const std::string &stationName, const TimeStamp &startTime);
+      Delays(const Parset &ps, const std::string &stationName, const TimeStamp &startTime, size_t blockSize);
       ~Delays();
 
       void start();
@@ -107,6 +107,11 @@ namespace LOFAR
       void getNextDelays( AllDelays &result );
 
     private:
+      const Parset                        &parset;
+      const std::string itsStationName;
+      const TimeStamp itsStartTime;
+      const size_t blockSize;
+
       casa::MVEpoch                       toUTC( const TimeStamp &timeStamp ) const;
 
       void                                init();
@@ -115,8 +120,6 @@ namespace LOFAR
       // calculations and to avoid blocking other threads
       void                                mainLoop();
 
-      const Parset                        &parset;
-
       volatile bool stop;
 
       // the number of seconds to maintain in the buffer, must be a multiple of
@@ -141,12 +144,6 @@ namespace LOFAR
       // another to trigger the consumer that data is available.
       Semaphore bufferFree, bufferUsed;
 
-      // Sample timings.
-      const TimeStamp itsStartTime;
-      const size_t blockSize;
-
-      // Station Name.
-      const std::string itsStationName;
       casa::MeasFrame itsFrame;
 
       std::vector<casa::MDirection::Types> itsDirectionTypes; // [sap]
-- 
GitLab