From 243c555798fc0fb4e8f8fd8559bdcd6b1d9ac581 Mon Sep 17 00:00:00 2001 From: vhinger Date: Fri, 7 Feb 2025 16:32:09 +0100 Subject: [PATCH] Remove explicit class member analogDetector* dd[MAXTHREADS] --- slsDetectorCalibration/multiThreadedAnalogDetector.h | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/slsDetectorCalibration/multiThreadedAnalogDetector.h b/slsDetectorCalibration/multiThreadedAnalogDetector.h index 85d80dc6e..1766fe680 100644 --- a/slsDetectorCalibration/multiThreadedAnalogDetector.h +++ b/slsDetectorCalibration/multiThreadedAnalogDetector.h @@ -344,6 +344,9 @@ class multiThreadedAnalogDetector { multiThreadedAnalogDetector(analogDetector *d, int num_threads, int fs = 1000, int num_sc = 1) : stop(0), nThreads(num_threads), nSC(num_sc) { + + std::vector< analogDetector* > dd(nThreads, nullptr); // instead of making it a class member + dd[0] = d; if (nThreads == 1) dd[0]->setId(100); @@ -374,7 +377,7 @@ class multiThreadedAnalogDetector { image = nullptr; ff = NULL; ped = NULL; - std::cout << "Ithread is " << ithread << std::endl; + //std::cout << "Ithread is " << ithread << std::endl; } virtual ~multiThreadedAnalogDetector() { @@ -659,7 +662,7 @@ class multiThreadedAnalogDetector { if (sc_pedestals_rms.count(sc) && sc_pedestals_rms[sc]) { delete[] sc_pedestals_rms[sc]; - sc_pedestals_rms = nullptr; + sc_pedestals_rms[sc] = nullptr; } // allocate memory and initialize all values to zero @@ -836,7 +839,7 @@ class multiThreadedAnalogDetector { bool stop; const int nThreads; threadedAnalogDetector *dets[MAXTHREADS]; - analogDetector *dd[MAXTHREADS]; + //analogDetector *dd[MAXTHREADS]; // VH: as I understand it this is a helper object used only in the constructor //int ithread{0}; // Thread index std::vector thread_counters_by_sc{}; // Round-robin counters for threads for each storage cell int* image;