Skip to content

Commit f9c9869

Browse files
committed
use enums for hFitConfig bins
1 parent 8b1cc1d commit f9c9869

File tree

1 file changed

+19
-14
lines changed

1 file changed

+19
-14
lines changed

PWGHF/D2H/Macros/runMassFitter.C

Lines changed: 19 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -288,14 +288,22 @@ int runMassFitter(const TString& configFileName)
288288
auto* hRawYieldsSecSigma = new TH1D("hRawYieldsSecSigma", ";" + sliceVarName + "(" + sliceVarUnit + ");width (GeV/#it{c}^{2})", nSliceVarBins, sliceVarLimits.data());
289289
auto* hRawYieldsFracDoubleGaus = new TH1D("hRawYieldsFracDoubleGaus", ";" + sliceVarName + "(" + sliceVarUnit + ");fraction of double gaussian", nSliceVarBins, sliceVarLimits.data());
290290

291-
const Int_t nConfigsToSave = 6;
292-
auto* hFitConfig = new TH2F("hfitConfig", "Fit Configurations", nConfigsToSave, 0, 6, nSliceVarBins, sliceVarLimits.data());
293-
const char* hFitConfigXLabel[nConfigsToSave] = {"mass min", "mass max", "rebin num", "fix sigma", "bkg func", "sgn func"};
291+
enum {
292+
ConfigMassMin = 1,
293+
ConfigMassMax,
294+
ConfigNRebin,
295+
ConfigFixSigma,
296+
ConfigBkgFunc,
297+
ConfigSgnFunc,
298+
NConfigsToSave
299+
};
300+
auto* hFitConfig = new TH2F("hfitConfig", "Fit Configurations", NConfigsToSave - 1, 0, NConfigsToSave - 1, nSliceVarBins, sliceVarLimits.data());
301+
const char* hFitConfigXLabel[NConfigsToSave - 1] = {"mass min", "mass max", "rebin num", "fix sigma", "bkg func", "sgn func"};
294302
hFitConfig->SetStats(false);
295303
hFitConfig->LabelsDeflate("X");
296304
hFitConfig->LabelsDeflate("Y");
297305
hFitConfig->LabelsOption("v");
298-
for (int i = 0; i < nConfigsToSave; i++) {
306+
for (int i = 0; i < NConfigsToSave - 1; i++) {
299307
hFitConfig->GetXaxis()->SetBinLabel(i + 1, hFitConfigXLabel[i]);
300308
}
301309

@@ -574,18 +582,15 @@ int runMassFitter(const TString& configFileName)
574582
}
575583
}
576584

577-
hFitConfig->SetBinContent(1, iSliceVar + 1, massMin[iSliceVar]);
578-
hFitConfig->SetBinContent(2, iSliceVar + 1, massMax[iSliceVar]);
579-
hFitConfig->SetBinContent(3, iSliceVar + 1, nRebin[iSliceVar]);
585+
hFitConfig->SetBinContent(ConfigMassMin, iSliceVar + 1, massMin[iSliceVar]);
586+
hFitConfig->SetBinContent(ConfigMassMax, iSliceVar + 1, massMax[iSliceVar]);
587+
hFitConfig->SetBinContent(ConfigNRebin, iSliceVar + 1, nRebin[iSliceVar]);
580588
if (fixSigma) {
581-
if (fixSigmaManual.empty()) {
582-
hFitConfig->SetBinContent(4, iSliceVar + 1, hSigmaToFix->GetBinContent(iSliceVar + 1));
583-
} else {
584-
hFitConfig->SetBinContent(4, iSliceVar + 1, fixSigmaManual[iSliceVar]);
585-
}
589+
const auto valueToFix = fixSigmaManual.empty() ? hSigmaToFix->GetBinContent(iSliceVar + 1) : fixSigmaManual[iSliceVar];
590+
hFitConfig->SetBinContent(ConfigFixSigma, iSliceVar + 1, valueToFix);
586591
}
587-
hFitConfig->SetBinContent(5, iSliceVar + 1, bkgFuncConfig[iSliceVar]);
588-
hFitConfig->SetBinContent(6, iSliceVar + 1, sgnFuncConfig[iSliceVar]);
592+
hFitConfig->SetBinContent(ConfigBkgFunc, iSliceVar + 1, bkgFuncConfig[iSliceVar]);
593+
hFitConfig->SetBinContent(ConfigSgnFunc, iSliceVar + 1, sgnFuncConfig[iSliceVar]);
589594
}
590595

591596
// save output histograms

0 commit comments

Comments
 (0)