Skip to content

Commit f9618d0

Browse files
authored
[PWGCF] Remove HfHelper instances (#18434)
1 parent 00c8b61 commit f9618d0

4 files changed

Lines changed: 60 additions & 65 deletions

File tree

‎PWGCF/Femto/Core/charmHadronBuilder.h‎

Lines changed: 12 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -289,7 +289,7 @@ class CharmHadronSelection : public baseselection::BaseSelection<float, o2::anal
289289
this->evaluateObservable(kImpactParameterProngSqSumMin, candidate.impactParameterProngSqSum());
290290
} else {
291291
this->evaluateObservable(kImpactParameterProductMax, candidate.impactParameter0() * candidate.impactParameter1());
292-
this->evaluateObservable(kCosThetaStarMax, mHfHelper.cosThetaStarD0(candidate));
292+
this->evaluateObservable(kCosThetaStarMax, HfHelper::cosThetaStarD0(candidate));
293293
}
294294
this->template assembleBitmask<SelectionHistName>();
295295
}
@@ -359,9 +359,9 @@ class CharmHadronSelection : public baseselection::BaseSelection<float, o2::anal
359359
if (mUseYCut) {
360360
float y = 0.f;
361361
if constexpr (isThreeProng<hadronType>()) {
362-
y = mHfHelper.yLc(candidate);
362+
y = HfHelper::yLc(candidate);
363363
} else {
364-
y = mHfHelper.yD0(candidate);
364+
y = HfHelper::yD0(candidate);
365365
}
366366
p = y > mYMin;
367367
this->template fillFilter<FilterHistName>(kYMin, p);
@@ -387,7 +387,6 @@ class CharmHadronSelection : public baseselection::BaseSelection<float, o2::anal
387387
}
388388

389389
private:
390-
HfHelper mHfHelper;
391390
float mPtMin = 0.f;
392391
float mPtMax = 24.f;
393392
float mEtaMin = -0.8f;
@@ -491,7 +490,7 @@ class CharmHadronBuilder
491490
candidate.decayLength(),
492491
candidate.decayLengthXY(),
493492
candidate.impactParameter0() * candidate.impactParameter1(),
494-
mHfHelper.cosThetaStarD0(candidate),
493+
HfHelper::cosThetaStarD0(candidate),
495494
candidate.mlProbD0().size() < NSizeMLScore ? -1.f : candidate.mlProbD0()[0],
496495
candidate.mlProbD0().size() < NSizeMLScore ? -1.f : candidate.mlProbD0()[1],
497496
candidate.mlProbD0().size() < NSizeMLScore ? -1.f : candidate.mlProbD0()[2],
@@ -567,8 +566,8 @@ class CharmHadronBuilder
567566
// remap the prongs onto the accepted hypothesis so that the proton is always first
568567
auto const& protonProng = isPKPi ? prong0 : prong2;
569568
auto const& pionProng = isPKPi ? prong2 : prong0;
570-
float const mass = isPKPi ? mHfHelper.invMassLcToPKPi(candidate) : mHfHelper.invMassLcToPiKP(candidate);
571-
float const massCompeting = isPKPi ? mHfHelper.invMassLcToPiKP(candidate) : mHfHelper.invMassLcToPKPi(candidate);
569+
float const mass = isPKPi ? HfHelper::invMassLcToPKPi(candidate) : HfHelper::invMassLcToPiKP(candidate);
570+
float const massCompeting = isPKPi ? HfHelper::invMassLcToPiKP(candidate) : HfHelper::invMassLcToPKPi(candidate);
572571

573572
collisionBuilder.template fillCollision<system>(collisionProducts, col);
574573
int64_t const protonDauIndex = trackBuilder.template getDaughterIndex<modes::Track::kCharmDaughter>(protonProng, trackProducts, collisionBuilder);
@@ -594,8 +593,8 @@ class CharmHadronBuilder
594593
// remap the prongs onto the accepted hypothesis so that the proton is always first
595594
auto const& protonProng = isPKPi ? prong0 : prong2;
596595
auto const& pionProng = isPKPi ? prong2 : prong0;
597-
float const mass = isPKPi ? mHfHelper.invMassLcToPKPi(candidate) : mHfHelper.invMassLcToPiKP(candidate);
598-
float const massCompeting = isPKPi ? mHfHelper.invMassLcToPiKP(candidate) : mHfHelper.invMassLcToPKPi(candidate);
596+
float const mass = isPKPi ? HfHelper::invMassLcToPKPi(candidate) : HfHelper::invMassLcToPiKP(candidate);
597+
float const massCompeting = isPKPi ? HfHelper::invMassLcToPiKP(candidate) : HfHelper::invMassLcToPKPi(candidate);
599598

600599
collisionBuilder.template fillMcCollision<system>(collisionProducts, col, mcCols, mcProducts, mcBuilder);
601600

@@ -634,9 +633,9 @@ class CharmHadronBuilder
634633
int64_t negDauIndex = trackBuilder.template getDaughterIndex<modes::Track::kCharmDaughter>(prong1, trackProducts, collisionBuilder);
635634

636635
if constexpr (modes::isEqual(hadronType, modes::CharmHadron::kD0)) {
637-
this->fillD0Tables(collisionProducts, charmHadronProducts, candidate, candidate.pt(), mHfHelper.invMassD0ToPiK(candidate), posDauIndex, negDauIndex);
636+
this->fillD0Tables(collisionProducts, charmHadronProducts, candidate, candidate.pt(), HfHelper::invMassD0ToPiK(candidate), posDauIndex, negDauIndex);
638637
} else {
639-
this->fillD0Tables(collisionProducts, charmHadronProducts, candidate, -candidate.pt(), mHfHelper.invMassD0barToKPi(candidate), posDauIndex, negDauIndex);
638+
this->fillD0Tables(collisionProducts, charmHadronProducts, candidate, -candidate.pt(), HfHelper::invMassD0barToKPi(candidate), posDauIndex, negDauIndex);
640639
}
641640
}
642641

@@ -683,9 +682,9 @@ class CharmHadronBuilder
683682
int64_t negDauIndex = trackBuilder.template getDaughterIndex<system, modes::Track::kCharmDaughter>(prong1, trackProducts, mcCols, collisionBuilder, mcParticles, mcBuilder, mcProducts);
684683

685684
if constexpr (modes::isEqual(hadronType, modes::CharmHadron::kD0)) {
686-
this->fillD0Tables(collisionProducts, charmHadronProducts, candidate, candidate.pt(), mHfHelper.invMassD0ToPiK(candidate), posDauIndex, negDauIndex);
685+
this->fillD0Tables(collisionProducts, charmHadronProducts, candidate, candidate.pt(), HfHelper::invMassD0ToPiK(candidate), posDauIndex, negDauIndex);
687686
} else {
688-
this->fillD0Tables(collisionProducts, charmHadronProducts, candidate, -candidate.pt(), mHfHelper.invMassD0barToKPi(candidate), posDauIndex, negDauIndex);
687+
this->fillD0Tables(collisionProducts, charmHadronProducts, candidate, -candidate.pt(), HfHelper::invMassD0barToKPi(candidate), posDauIndex, negDauIndex);
689688
}
690689
mcBuilder.template fillMcD0WithLabel<system>(candidate, tracks, mcParticles, mcCols, mcProducts);
691690
}
@@ -711,7 +710,6 @@ class CharmHadronBuilder
711710

712711
private:
713712
CharmHadronSelection<hadronType, SelectionHistName, FilterHistName> mCharmHadronSelection;
714-
HfHelper mHfHelper;
715713

716714
bool mProduceD0s = false;
717715
bool mProduceD0Masks = false;

‎PWGCF/FemtoUniverse/TableProducer/femtoUniverseProducerTask.cxx‎

Lines changed: 33 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -382,7 +382,6 @@ struct FemtoUniverseProducerTask {
382382
Configurable<float> confNsigmaCombinedParticle{"confNsigmaCombinedParticle", 3.0, "TPC and TOF Sigma (combined) for particle (track) momentum > Confmom"};
383383
} ConfPIDBitmask;
384384

385-
HfHelper hfHelper;
386385
bool isKaonNSigma(float mom, float nsigmaTPCK, float nsigmaTOFK)
387386
{
388387
if (mom < ConfPhiSelection.confMomKaon03) { // 0.0-0.3
@@ -829,17 +828,17 @@ struct FemtoUniverseProducerTask {
829828
-999., -999., -999., -999., -999., -999., -999., -999.,
830829
-999., -999., -999., -999., -999.,
831830
-999.,
832-
hfHelper.yD0(particle), // getter transRadius
833-
particle.mlProbD0()[0], // getter decayVtxX
834-
particle.mlProbD0()[1], // getter decayVtxY
835-
particle.mlProbD0()[2], // getter decayVtxZ
836-
-999.); // Additional info for D0/D0bar
831+
HfHelper::yD0(particle), // getter transRadius
832+
particle.mlProbD0()[0], // getter decayVtxX
833+
particle.mlProbD0()[1], // getter decayVtxY
834+
particle.mlProbD0()[2], // getter decayVtxZ
835+
-999.); // Additional info for D0/D0bar
837836
} else if constexpr (isD0barML) {
838837
outputDebugParts(-999., -999., -999., -999., -999., -999., -999., -999., -999.,
839838
-999., -999., -999., -999., -999., -999., -999., -999.,
840839
-999., -999., -999., -999., -999.,
841840
-999.,
842-
hfHelper.yD0(particle), // getter transRadius
841+
HfHelper::yD0(particle), // getter transRadius
843842
particle.mlProbD0bar()[0], // getter decayVtxX
844843
particle.mlProbD0bar()[1], // getter decayVtxY
845844
particle.mlProbD0bar()[2], // getter decayVtxZ
@@ -869,17 +868,17 @@ struct FemtoUniverseProducerTask {
869868
-999., -999., -999., -999., -999., -999., -999., -999.,
870869
-999., -999., -999., -999., -999.,
871870
-999.,
872-
hfHelper.yD0(particle), // getter transRadius
873-
particle.mlProbD0()[0], // getter decayVtxX
874-
particle.mlProbD0()[1], // getter decayVtxY
875-
particle.mlProbD0()[2], // getter decayVtxZ
876-
-999.); // Additional info for D0/D0bar
871+
HfHelper::yD0(particle), // getter transRadius
872+
particle.mlProbD0()[0], // getter decayVtxX
873+
particle.mlProbD0()[1], // getter decayVtxY
874+
particle.mlProbD0()[2], // getter decayVtxZ
875+
-999.); // Additional info for D0/D0bar
877876
} else if constexpr (isD0barML) {
878877
outputDebugParts(particle.flagMcMatchRec(), -999., -999., -999., -999., -999., -999., -999., -999.,
879878
originMcReco, -999., -999., -999., -999., -999., -999., -999.,
880879
-999., -999., -999., -999., -999.,
881880
-999.,
882-
hfHelper.yD0(particle), // getter transRadius
881+
HfHelper::yD0(particle), // getter transRadius
883882
particle.mlProbD0bar()[0], // getter decayVtxX
884883
particle.mlProbD0bar()[1], // getter decayVtxY
885884
particle.mlProbD0bar()[2], // getter decayVtxZ
@@ -1719,7 +1718,7 @@ struct FemtoUniverseProducerTask {
17191718
continue;
17201719
}
17211720

1722-
if (ConfD0Selection.useYCutD0Cand && std::abs(hfHelper.yD0(hfCand)) > ConfD0Selection.yD0CandMax) {
1721+
if (ConfD0Selection.useYCutD0Cand && std::abs(HfHelper::yD0(hfCand)) > ConfD0Selection.yD0CandMax) {
17231722
continue;
17241723
}
17251724

@@ -1737,18 +1736,18 @@ struct FemtoUniverseProducerTask {
17371736
auto negtrack = hfCand.template prong1_as<TrackType>();
17381737

17391738
if (hfCand.isSelD0() == 1 && hfCand.isSelD0bar() == 0) {
1740-
invMassD0 = hfHelper.invMassD0ToPiK(hfCand);
1741-
invMassD0bar = -hfHelper.invMassD0barToKPi(hfCand);
1739+
invMassD0 = HfHelper::invMassD0ToPiK(hfCand);
1740+
invMassD0bar = -HfHelper::invMassD0barToKPi(hfCand);
17421741
isD0D0bar = true;
17431742
daughFlag = 1;
17441743
} else if (hfCand.isSelD0() == 0 && hfCand.isSelD0bar() == 1) {
1745-
invMassD0 = -hfHelper.invMassD0ToPiK(hfCand);
1746-
invMassD0bar = hfHelper.invMassD0barToKPi(hfCand);
1744+
invMassD0 = -HfHelper::invMassD0ToPiK(hfCand);
1745+
invMassD0bar = HfHelper::invMassD0barToKPi(hfCand);
17471746
isD0D0bar = true;
17481747
daughFlag = -1;
17491748
} else if (hfCand.isSelD0() == 1 && hfCand.isSelD0bar() == 1) {
1750-
invMassD0 = hfHelper.invMassD0ToPiK(hfCand);
1751-
invMassD0bar = hfHelper.invMassD0barToKPi(hfCand);
1749+
invMassD0 = HfHelper::invMassD0ToPiK(hfCand);
1750+
invMassD0bar = HfHelper::invMassD0barToKPi(hfCand);
17521751
if (ConfD0Selection.storeD0D0barDoubleMassHypo) {
17531752
isD0D0bar = true;
17541753
daughFlag = 0;
@@ -1842,7 +1841,7 @@ struct FemtoUniverseProducerTask {
18421841
continue;
18431842
}
18441843

1845-
if (ConfD0Selection.useYCutD0Cand && std::abs(hfHelper.yD0(hfCand)) > ConfD0Selection.yD0CandMax) {
1844+
if (ConfD0Selection.useYCutD0Cand && std::abs(HfHelper::yD0(hfCand)) > ConfD0Selection.yD0CandMax) {
18461845
continue;
18471846
}
18481847

@@ -1859,18 +1858,18 @@ struct FemtoUniverseProducerTask {
18591858
auto negtrack = hfCand.template prong1_as<TrackType>();
18601859

18611860
if (hfCand.isSelD0() == 1 && hfCand.isSelD0bar() == 0) {
1862-
invMassD0 = hfHelper.invMassD0ToPiK(hfCand);
1863-
invMassD0bar = -hfHelper.invMassD0barToKPi(hfCand);
1861+
invMassD0 = HfHelper::invMassD0ToPiK(hfCand);
1862+
invMassD0bar = -HfHelper::invMassD0barToKPi(hfCand);
18641863
isD0D0bar = true;
18651864
daughFlag = 1;
18661865
} else if (hfCand.isSelD0() == 0 && hfCand.isSelD0bar() == 1) {
1867-
invMassD0 = -hfHelper.invMassD0ToPiK(hfCand);
1868-
invMassD0bar = hfHelper.invMassD0barToKPi(hfCand);
1866+
invMassD0 = -HfHelper::invMassD0ToPiK(hfCand);
1867+
invMassD0bar = HfHelper::invMassD0barToKPi(hfCand);
18691868
isD0D0bar = true;
18701869
daughFlag = -1;
18711870
} else if (hfCand.isSelD0() == 1 && hfCand.isSelD0bar() == 1) {
1872-
invMassD0 = hfHelper.invMassD0ToPiK(hfCand);
1873-
invMassD0bar = hfHelper.invMassD0barToKPi(hfCand);
1871+
invMassD0 = HfHelper::invMassD0ToPiK(hfCand);
1872+
invMassD0bar = HfHelper::invMassD0barToKPi(hfCand);
18741873
if (ConfD0Selection.storeD0D0barDoubleMassHypo) {
18751874
isD0D0bar = true;
18761875
daughFlag = 0;
@@ -1974,7 +1973,7 @@ struct FemtoUniverseProducerTask {
19741973
}
19751974
}
19761975

1977-
if (ConfD0Selection.useYCutD0Cand && std::abs(hfHelper.yD0(hfCand)) > ConfD0Selection.yD0CandMax) {
1976+
if (ConfD0Selection.useYCutD0Cand && std::abs(HfHelper::yD0(hfCand)) > ConfD0Selection.yD0CandMax) {
19781977
continue;
19791978
}
19801979

@@ -2000,18 +1999,18 @@ struct FemtoUniverseProducerTask {
20001999
childIDs[1] = 0;
20012000

20022001
if (hfCand.isSelD0() == 1 && hfCand.isSelD0bar() == 0) {
2003-
invMassD0 = hfHelper.invMassD0ToPiK(hfCand);
2004-
invMassD0bar = -hfHelper.invMassD0barToKPi(hfCand);
2002+
invMassD0 = HfHelper::invMassD0ToPiK(hfCand);
2003+
invMassD0bar = -HfHelper::invMassD0barToKPi(hfCand);
20052004
isD0D0bar = true;
20062005
daughFlag = 1;
20072006
} else if (hfCand.isSelD0() == 0 && hfCand.isSelD0bar() == 1) {
2008-
invMassD0 = -hfHelper.invMassD0ToPiK(hfCand);
2009-
invMassD0bar = hfHelper.invMassD0barToKPi(hfCand);
2007+
invMassD0 = -HfHelper::invMassD0ToPiK(hfCand);
2008+
invMassD0bar = HfHelper::invMassD0barToKPi(hfCand);
20102009
isD0D0bar = true;
20112010
daughFlag = -1;
20122011
} else if (hfCand.isSelD0() == 1 && hfCand.isSelD0bar() == 1) {
2013-
invMassD0 = hfHelper.invMassD0ToPiK(hfCand);
2014-
invMassD0bar = hfHelper.invMassD0barToKPi(hfCand);
2012+
invMassD0 = HfHelper::invMassD0ToPiK(hfCand);
2013+
invMassD0bar = HfHelper::invMassD0barToKPi(hfCand);
20152014
if (ConfD0Selection.storeD0D0barDoubleMassHypo) {
20162015
isD0D0bar = true;
20172016
daughFlag = 0;

‎PWGCF/FemtoWorld/TableProducer/femtoWorldProducerTask.cxx‎

Lines changed: 12 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -240,7 +240,6 @@ struct femtoWorldProducerTask {
240240
int mRunNumber;
241241
float mMagField;
242242
Service<o2::ccdb::BasicCCDBManager> ccdb; /// Accessing the CCDB
243-
HfHelper hfHelper;
244243

245244
void init(InitContext&)
246245
{
@@ -1168,7 +1167,7 @@ struct femtoWorldProducerTask {
11681167
if (!(candidate.hfflag() & 1 << aod::hf_cand_2prong::DecayType::D0ToPiK)) {
11691168
continue;
11701169
}
1171-
if (config.yCandMax >= 0. && std::abs(hfHelper.yD0(candidate)) > config.yCandMax) {
1170+
if (config.yCandMax >= 0. && std::abs(HfHelper::yD0(candidate)) > config.yCandMax) {
11721171
continue;
11731172
}
11741173

@@ -1297,11 +1296,11 @@ struct femtoWorldProducerTask {
12971296
candidate.eta(),
12981297
candidate.phi(),
12991298
candidate.p(),
1300-
0., // general mass
1301-
hfHelper.invMassD0ToPiK(candidate), // D0mass
1302-
hfHelper.invMassD0barToKPi(candidate), // D0bar mass
1303-
candidate.isSelD0(), // D0 flag
1304-
candidate.isSelD0bar(), // D0bar flag
1299+
0., // general mass
1300+
HfHelper::invMassD0ToPiK(candidate), // D0mass
1301+
HfHelper::invMassD0barToKPi(candidate), // D0bar mass
1302+
candidate.isSelD0(), // D0 flag
1303+
candidate.isSelD0bar(), // D0bar flag
13051304
aod::femtoworldparticle::ParticleType::kD0D0bar,
13061305
0., // cutContainerV0.at(femtoWorldV0Selection::V0ContainerPosition::kV0),
13071306
0,
@@ -2115,7 +2114,7 @@ struct femtoWorldProducerTask {
21152114
if (!(candidate.hfflag() & 1 << aod::hf_cand_2prong::DecayType::D0ToPiK)) {
21162115
continue;
21172116
}
2118-
if (config.yCandMax >= 0. && std::abs(hfHelper.yD0(candidate)) > config.yCandMax) {
2117+
if (config.yCandMax >= 0. && std::abs(HfHelper::yD0(candidate)) > config.yCandMax) {
21192118
continue;
21202119
}
21212120

@@ -2246,11 +2245,11 @@ struct femtoWorldProducerTask {
22462245
candidate.eta(),
22472246
candidate.phi(),
22482247
candidate.p(),
2249-
0., // general mass
2250-
hfHelper.invMassD0ToPiK(candidate), // D0mass
2251-
hfHelper.invMassD0barToKPi(candidate), // D0bar mass
2252-
candidate.isSelD0(), // D0 flag
2253-
candidate.isSelD0bar(), // D0bar flag
2248+
0., // general mass
2249+
HfHelper::invMassD0ToPiK(candidate), // D0mass
2250+
HfHelper::invMassD0barToKPi(candidate), // D0bar mass
2251+
candidate.isSelD0(), // D0 flag
2252+
candidate.isSelD0bar(), // D0bar flag
22542253
aod::femtoworldparticle::ParticleType::kD0D0bar,
22552254
0., // cutContainerV0.at(femtoWorldV0Selection::V0ContainerPosition::kV0),
22562255
0,

‎PWGCF/TableProducer/filter2Prong.cxx‎

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -179,7 +179,6 @@ struct Filter2Prong {
179179
ConfigurableAxis axisVertexMix{"axisVertexMix", {7, -7, 7}, "vertex axis for phi event mixing"};
180180
ConfigurableAxis axisMultiplicityMix{"axisMultiplicityMix", {VARIABLE_WIDTH, 0, 5, 10, 20, 30, 40, 50, 100.1}, "multiplicity axis for phi event mixing"};
181181

182-
HfHelper hfHelper;
183182
Produces<aod::CF2ProngTracks> output2ProngTracks;
184183
Produces<aod::CF2ProngTrackmls> output2ProngTrackmls;
185184

@@ -246,7 +245,7 @@ struct Filter2Prong {
246245
// look-up the collision id
247246
if ((c.hfflag() & (1 << aod::hf_cand_2prong::DecayType::D0ToPiK)) == 0)
248247
continue;
249-
if (cfgYMax >= 0.0f && std::abs(hfHelper.yD0(c)) > cfgYMax)
248+
if (cfgYMax >= 0.0f && std::abs(HfHelper::yD0(c)) > cfgYMax)
250249
continue;
251250
if constexpr (std::experimental::is_detected<HasFlagMcMatchRec, typename HFCandidatesType::iterator>::value) {
252251
if (std::abs(c.flagMcMatchRec()) != o2::hf_decay::hf_cand_2prong::DecayChannelMain::D0ToPiK)
@@ -255,7 +254,7 @@ struct Filter2Prong {
255254

256255
if (c.isSelD0() > 0) {
257256
output2ProngTracks(cfcollisions.begin().globalIndex(),
258-
prongCFId[0], prongCFId[1], c.pt(), c.eta(), c.phi(), hfHelper.invMassD0ToPiK(c), aod::cf2prongtrack::D0ToPiK);
257+
prongCFId[0], prongCFId[1], c.pt(), c.eta(), c.phi(), HfHelper::invMassD0ToPiK(c), aod::cf2prongtrack::D0ToPiK);
259258
if constexpr (std::experimental::is_detected<HasMLProb, typename HFCandidatesType::iterator>::value) {
260259
mlvecd.clear();
261260
for (const float val : c.mlProbD0())
@@ -269,7 +268,7 @@ struct Filter2Prong {
269268

270269
if (c.isSelD0bar() > 0) {
271270
output2ProngTracks(cfcollisions.begin().globalIndex(),
272-
prongCFId[0], prongCFId[1], c.pt(), c.eta(), c.phi(), hfHelper.invMassD0barToKPi(c),
271+
prongCFId[0], prongCFId[1], c.pt(), c.eta(), c.phi(), HfHelper::invMassD0barToKPi(c),
273272
c.isSelD0() > 0 ? aod::cf2prongtrack::D0barToKPi : aod::cf2prongtrack::D0barToKPiExclusive);
274273
if constexpr (std::experimental::is_detected<HasMLProb, typename HFCandidatesType::iterator>::value) {
275274
mlvecd.clear();

0 commit comments

Comments
 (0)