Skip to content

Commit c8b4c16

Browse files
committed
Fix Variable shadowing and performance issue
1 parent fad8470 commit c8b4c16

2 files changed

Lines changed: 15 additions & 12 deletions

File tree

ALICE3/TableProducer/alice3-dq-table-maker.cxx

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -381,19 +381,22 @@ struct Alice3DQTableMaker {
381381
}
382382

383383
// If this MC track was not already added to the map, add it now
384-
if (fLabelsMap.find(mctrack.globalIndex()) == fLabelsMap.end()) {
385-
fLabelsMap[mctrack.globalIndex()] = trackCounter;
386-
fLabelsMapReversed[trackCounter] = mctrack.globalIndex();
387-
fMCFlags[mctrack.globalIndex()] = mcflags;
388-
trackCounter++;
384+
const auto mcTrackIndex = mctrack.globalIndex();
385+
const bool inserted = fLabelsMap.try_emplace(mcTrackIndex, trackCounter).second;
386+
387+
if (inserted) {
388+
fLabelsMapReversed.try_emplace(trackCounter, mcTrackIndex);
389+
fMCFlags.try_emplace(mcTrackIndex, mcflags);
390+
++trackCounter;
389391

390392
// fill histograms for each of the signals, if found
391393
if (fConfigHistOutput.fConfigQA) {
392394
VarManager::FillTrackMC(mcTracks, mctrack);
393395
auto mcCollision = mctrack.template mcCollision_as<MyEventsMC>();
394396
VarManager::FillEvent<gkEventMcFillMap>(mcCollision);
397+
395398
int j = 0;
396-
for (auto signal = fMCSignals.begin(); signal != fMCSignals.end(); signal++, j++) {
399+
for (auto signal = fMCSignals.begin(); signal != fMCSignals.end(); ++signal, ++j) {
397400
if (mcflags & (static_cast<uint16_t>(1) << j)) {
398401
fHistMan->FillHistClass(Form("MCTruth_%s", (*signal)->GetName()), VarManager::fgValues);
399402
}

ALICE3/Tasks/alice3-dq-efficiency.cxx

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -909,9 +909,9 @@ struct AnalysisSameEventPairing {
909909
// if there are pair cuts specified, assign hist directories for each barrel cut - pair cut combination
910910
// NOTE: This could possibly lead to large histogram outputs. It is strongly advised to use pair cuts only
911911
// if you know what you are doing.
912-
TString pairCutNamesStr = fConfigCuts.pair.value;
913-
if (!pairCutNamesStr.IsNull()) { // if pair cuts
914-
std::unique_ptr<TObjArray> objArrayPair(pairCutNamesStr.Tokenize(","));
912+
TString pairCutHistNamesStr = fConfigCuts.pair.value;
913+
if (!pairCutHistNamesStr.IsNull()) { // if pair cuts
914+
std::unique_ptr<TObjArray> objArrayPair(pairCutHistNamesStr.Tokenize(","));
915915
fNPairCuts = objArrayPair->GetEntries();
916916
for (int iPairCut = 0; iPairCut < fNPairCuts; ++iPairCut) { // loop over pair cuts
917917
names = {
@@ -1757,9 +1757,9 @@ struct AnalysisAsymmetricPairing {
17571757
DefineHistograms(fHistMan, Form("TripletsBarrelSE_%s_%s", legsStr.Data(), objArrayCommon->At(iCommonCut)->GetName()), fConfigHistogramSubgroups.value.data());
17581758
}
17591759

1760-
TString pairCutNamesStr = fConfigPairCuts.value;
1761-
if (!pairCutNamesStr.IsNull()) { // if pair cuts
1762-
std::unique_ptr<TObjArray> objArrayPair(pairCutNamesStr.Tokenize(","));
1760+
TString pairCutHistNamesStr = fConfigPairCuts.value;
1761+
if (!pairCutHistNamesStr.IsNull()) { // if pair cuts
1762+
std::unique_ptr<TObjArray> objArrayPair(pairCutHistNamesStr.Tokenize(","));
17631763
fNPairCuts = objArrayPair->GetEntries();
17641764
for (int iPairCut = 0; iPairCut < fNPairCuts; ++iPairCut) { // loop over pair cuts
17651765
DefineHistograms(fHistMan, Form("TripletsBarrelSE_%s_%s", legsStr.Data(), objArrayPair->At(iPairCut)->GetName()), fConfigHistogramSubgroups.value.data());

0 commit comments

Comments
 (0)