diff --git a/RTCP/Cobalt/OutputProc/src/GPUProcIO.cc b/RTCP/Cobalt/OutputProc/src/GPUProcIO.cc index 4eca0fdbab2ffab58204c006a650f8e101a96cb3..7cb62c7b0c8a38668807462e0ea969a174da67f4 100644 --- a/RTCP/Cobalt/OutputProc/src/GPUProcIO.cc +++ b/RTCP/Cobalt/OutputProc/src/GPUProcIO.cc @@ -294,9 +294,9 @@ bool process(Stream &controlStream) LOG_DEBUG_STR("Processing final meta data"); for (size_t i = 0; i < subbandWriters.size(); ++i) - subbandWriters[i]->augment(finalMetaData); + subbandWriters[i]->fini(finalMetaData); for (size_t i = 0; i < tabWriters.size(); ++i) - tabWriters[i]->augment(finalMetaData); + tabWriters[i]->fini(finalMetaData); /* * LTA FEEDBACK diff --git a/RTCP/Cobalt/OutputProc/src/MSWriter.cc b/RTCP/Cobalt/OutputProc/src/MSWriter.cc index 826c6b422157e1ef18d21c0eb1d1c169cf7ea8c5..1c354398df6d4ba919d0c6c8fa3dcc69f0a58192 100644 --- a/RTCP/Cobalt/OutputProc/src/MSWriter.cc +++ b/RTCP/Cobalt/OutputProc/src/MSWriter.cc @@ -42,11 +42,11 @@ namespace LOFAR { } - void MSWriter::createMetaData() + void MSWriter::init() { } - void MSWriter::augment(const FinalMetaData &finalMetaData) + void MSWriter::fini(const FinalMetaData &finalMetaData) { (void)finalMetaData; } diff --git a/RTCP/Cobalt/OutputProc/src/MSWriter.h b/RTCP/Cobalt/OutputProc/src/MSWriter.h index 82b6ed55750040dffa8d0b44121c60927dbe5e02..eb322a9972e6e1359d0f6a2d9b88d62449e1af60 100644 --- a/RTCP/Cobalt/OutputProc/src/MSWriter.h +++ b/RTCP/Cobalt/OutputProc/src/MSWriter.h @@ -39,9 +39,12 @@ namespace LOFAR virtual void write(StreamableData *) = 0; - virtual void createMetaData(); + // init() initialises the meta data, + // and will be called in parallel to write(). + virtual void init(); - virtual void augment(const FinalMetaData &finalMetaData); + // fini() will be called after init() and write(). + virtual void fini(const FinalMetaData &finalMetaData); virtual size_t getDataSize(); diff --git a/RTCP/Cobalt/OutputProc/src/MSWriterCorrelated.cc b/RTCP/Cobalt/OutputProc/src/MSWriterCorrelated.cc index bcac57dd52d0089224e6b7a871a233fa23c413fe..52004bb85dcfcc0d5fd7afc190f4a8adf781fea5 100644 --- a/RTCP/Cobalt/OutputProc/src/MSWriterCorrelated.cc +++ b/RTCP/Cobalt/OutputProc/src/MSWriterCorrelated.cc @@ -71,7 +71,7 @@ namespace LOFAR } - void MSWriterCorrelated::createMetaData() + void MSWriterCorrelated::init() { // Creaate MeasurementSet #if defined HAVE_AIPSPP @@ -126,7 +126,7 @@ namespace LOFAR } - void MSWriterCorrelated::augment(const FinalMetaData &finalMetaData) + void MSWriterCorrelated::fini(const FinalMetaData &finalMetaData) { ScopedLock sl(MeasurementSetFormat::sharedMutex); diff --git a/RTCP/Cobalt/OutputProc/src/MSWriterCorrelated.h b/RTCP/Cobalt/OutputProc/src/MSWriterCorrelated.h index 243e60d567c3c5f306f18641ecfd43162693c784..99f2556bd93e7ac3ec298fc43e433c4ab989a387 100644 --- a/RTCP/Cobalt/OutputProc/src/MSWriterCorrelated.h +++ b/RTCP/Cobalt/OutputProc/src/MSWriterCorrelated.h @@ -43,11 +43,11 @@ namespace LOFAR MSWriterCorrelated(const std::string &logPrefix, const std::string &msName, const Parset &parset, unsigned subbandIndex); ~MSWriterCorrelated(); - virtual void createMetaData(); + virtual void init(); virtual void write(StreamableData *data); - virtual void augment(const FinalMetaData &finalMetaData); + virtual void fini(const FinalMetaData &finalMetaData); protected: const std::string itsLogPrefix; diff --git a/RTCP/Cobalt/OutputProc/src/MSWriterDAL.cc b/RTCP/Cobalt/OutputProc/src/MSWriterDAL.cc index 5c7399f39cdbec7f9769e2b60bdfa5180cf40b7e..12bd714764a5d4a76f305eb02a32e80509ecc581 100644 --- a/RTCP/Cobalt/OutputProc/src/MSWriterDAL.cc +++ b/RTCP/Cobalt/OutputProc/src/MSWriterDAL.cc @@ -114,7 +114,7 @@ namespace LOFAR } template <typename T,unsigned DIM> - void MSWriterDAL<T,DIM>::createMetaData() + void MSWriterDAL<T,DIM>::init() { string h5filename = forceextension(itsFilename, ".h5"); string rawfilename = forceextension(itsFilename, ".raw"); diff --git a/RTCP/Cobalt/OutputProc/src/MSWriterDAL.h b/RTCP/Cobalt/OutputProc/src/MSWriterDAL.h index dff266f738c99dd4d2b4c5c14efe8a7e2b3e1cd8..8f9c552cbde8a5aa01535de8fdab279e0c7b43ab 100644 --- a/RTCP/Cobalt/OutputProc/src/MSWriterDAL.h +++ b/RTCP/Cobalt/OutputProc/src/MSWriterDAL.h @@ -45,7 +45,7 @@ namespace LOFAR MSWriterDAL(const std::string &filename, const Parset &parset, unsigned fileno); ~MSWriterDAL(); - virtual void createMetaData(); + virtual void init(); virtual void write(StreamableData *data); diff --git a/RTCP/Cobalt/OutputProc/src/OutputThread.cc b/RTCP/Cobalt/OutputProc/src/OutputThread.cc index 6fb2e8230a66e9332f2b720b5a8e998053e388fd..5e0237bd2e76ea147429b25190914c4fa370be8c 100644 --- a/RTCP/Cobalt/OutputProc/src/OutputThread.cc +++ b/RTCP/Cobalt/OutputProc/src/OutputThread.cc @@ -161,26 +161,26 @@ namespace LOFAR } - template<typename T> void OutputThread<T>::createMetaData() + template<typename T> void OutputThread<T>::init() { try { - // augment the data product + // fini the data product ASSERT(itsWriter.get()); - itsWriter->createMetaData(); + itsWriter->init(); } catch (Exception &ex) { LOG_ERROR_STR(itsLogPrefix << "Could not create meta data: " << ex); } } - template<typename T> void OutputThread<T>::augment( const FinalMetaData &finalMetaData ) + template<typename T> void OutputThread<T>::fini( const FinalMetaData &finalMetaData ) { try { - // augment the data product + // fini the data product ASSERT(itsWriter.get()); - itsWriter->augment(finalMetaData); + itsWriter->fini(finalMetaData); } catch (Exception &ex) { LOG_ERROR_STR(itsLogPrefix << "Could not add final meta data: " << ex); } @@ -216,7 +216,7 @@ namespace LOFAR } # pragma omp section - createMetaData(); + init(); } } diff --git a/RTCP/Cobalt/OutputProc/src/OutputThread.h b/RTCP/Cobalt/OutputProc/src/OutputThread.h index 717980740873c4ff48fec72536e82fcc1ca2582a..106fe70ae3bc137859b320cb444377fa9fc60e3a 100644 --- a/RTCP/Cobalt/OutputProc/src/OutputThread.h +++ b/RTCP/Cobalt/OutputProc/src/OutputThread.h @@ -70,10 +70,10 @@ namespace LOFAR void cleanUp() const; // Create the metadata files in parallel to writing the data - void createMetaData(); + void init(); // Add FinalMetaData to the data container. - void augment(const FinalMetaData &finalMetaData); + void fini(const FinalMetaData &finalMetaData); // Return the LTA feedback produced by this writer. ParameterSet feedbackLTA() const; diff --git a/RTCP/Cobalt/OutputProc/src/SubbandWriter.cc b/RTCP/Cobalt/OutputProc/src/SubbandWriter.cc index 33fd6904eacea74a5170c8270f460618dfe3226e..d2a1e12dda56c8c844b58f257d541c2580c9e780 100644 --- a/RTCP/Cobalt/OutputProc/src/SubbandWriter.cc +++ b/RTCP/Cobalt/OutputProc/src/SubbandWriter.cc @@ -67,9 +67,9 @@ namespace LOFAR } - void SubbandWriter::augment( const FinalMetaData &finalMetaData ) + void SubbandWriter::fini( const FinalMetaData &finalMetaData ) { - itsOutputThread.augment(finalMetaData); + itsOutputThread.fini(finalMetaData); } diff --git a/RTCP/Cobalt/OutputProc/src/SubbandWriter.h b/RTCP/Cobalt/OutputProc/src/SubbandWriter.h index 65aeccb98c468bfe628901502c712ce0514a299b..cc3b43767cb5919a5ba5ca266051d887dc532339 100644 --- a/RTCP/Cobalt/OutputProc/src/SubbandWriter.h +++ b/RTCP/Cobalt/OutputProc/src/SubbandWriter.h @@ -54,7 +54,7 @@ namespace LOFAR void process(); - void augment(const FinalMetaData &finalMetaData); + void fini(const FinalMetaData &finalMetaData); ParameterSet feedbackLTA() const; diff --git a/RTCP/Cobalt/OutputProc/test/tMSWriterCorrelated.cc b/RTCP/Cobalt/OutputProc/test/tMSWriterCorrelated.cc index ffdccf0b1184a37784ab7b91b8305f25fc1d2e9c..0b3e702615e2d9c63d96f3db5317df7b08c57dc9 100644 --- a/RTCP/Cobalt/OutputProc/test/tMSWriterCorrelated.cc +++ b/RTCP/Cobalt/OutputProc/test/tMSWriterCorrelated.cc @@ -40,6 +40,7 @@ int main() { // Create MeasurementSet MSWriterCorrelated writer("", "tMSWriterCorrelated.in_1/SB000.MS", parset, 0); + writer.init(); // Write some data CorrelatedData data(parset.nrMergedStations(), parset.settings.correlator.nrChannels, parset.settings.correlator.nrSamplesPerIntegration(), heapAllocator, 512); @@ -64,7 +65,7 @@ int main() fmd.brokenRCUsAtBegin.push_back(rcu); - writer.augment(fmd); + writer.fini(fmd); } return 0; diff --git a/RTCP/Cobalt/OutputProc/test/tSubbandWriter.cc b/RTCP/Cobalt/OutputProc/test/tSubbandWriter.cc index f68e6fea6d00e8075ba67ee05737e836b2fddcc0..527aa4449d43b970bddd193b074b8ff4c9c0eeaf 100644 --- a/RTCP/Cobalt/OutputProc/test/tSubbandWriter.cc +++ b/RTCP/Cobalt/OutputProc/test/tSubbandWriter.cc @@ -97,6 +97,7 @@ SUITE(SubbandWriter) { # pragma omp section { + w.init(); w.process(); } @@ -139,6 +140,7 @@ SUITE(SubbandWriter) { # pragma omp section { + w.init(); w.process(); } @@ -159,7 +161,7 @@ SUITE(SubbandWriter) finalMetaData.brokenRCUsAtBegin.push_back( FinalMetaData::BrokenRCU("CS001", "LBA", brokenAntennaBefore, "2012-01-01 12:34") ); finalMetaData.brokenRCUsDuring.push_back( FinalMetaData::BrokenRCU("CS001", "LBA", brokenAntennaDuring, "2013-01-01 00:30") ); - w.augment(finalMetaData); + w.fini(finalMetaData); // list failures BEFORE obs {