switched PRunSingleHistoRRF where possible to smart pointers.

This commit is contained in:
suter_a 2023-10-21 19:19:04 +02:00
parent 8e7fda92e1
commit be29e55834

View File

@ -38,6 +38,7 @@
#include <cmath>
#include <iostream>
#include <fstream>
#include <memory>
#include <TString.h>
#include <TObjArray.h>
@ -1068,13 +1069,13 @@ Double_t PRunSingleHistoRRF::GetMainFrequency(PDoubleVector &data)
// create histo
Double_t startTime = (fGoodBins[0]-fT0s[0]) * fTimeResolution;
Int_t noOfBins = fGoodBins[1]-fGoodBins[0]+1;
TH1F *histo = new TH1F("data", "data", noOfBins, startTime-fTimeResolution/2.0, startTime+fTimeResolution/2.0+noOfBins*fTimeResolution);
std::unique_ptr<TH1F> histo = std::make_unique<TH1F>("data", "data", noOfBins, startTime-fTimeResolution/2.0, startTime+fTimeResolution/2.0+noOfBins*fTimeResolution);
for (Int_t i=fGoodBins[0]; i<=fGoodBins[1]; i++) {
histo->SetBinContent(i-fGoodBins[0]+1, data[i]);
}
// Fourier transform
PFourier *ft = new PFourier(histo, FOURIER_UNIT_FREQ);
std::unique_ptr<PFourier> ft = std::make_unique<PFourier>(histo.get(), FOURIER_UNIT_FREQ);
ft->Transform(F_APODIZATION_STRONG);
// find frequency maximum
@ -1099,10 +1100,6 @@ Double_t PRunSingleHistoRRF::GetMainFrequency(PDoubleVector &data)
// clean up
if (power)
delete power;
if (ft)
delete ft;
if (histo)
delete histo;
return freqMax;
}