Skip to content

Commit 8f07a7c

Browse files
authored
new version
1 parent 14dc656 commit 8f07a7c

File tree

1 file changed

+28
-26
lines changed

1 file changed

+28
-26
lines changed

PWGHF/TableProducer/treeCreatorOmegacSt.cxx

Lines changed: 28 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -317,7 +317,9 @@ struct HfTreeCreatorOmegacSt {
317317
int runNumber{0};
318318
std::map<int, int> mapMcPartToGenTable;
319319

320-
using Collisions = soa::Filtered<soa::Join<aod::Collisions, aod::EvSels, aod::CentFT0Cs, aod::CentFT0Ms>>;
320+
using Collisions = soa::Filtered<soa::Join<aod::Collisions, aod::EvSels>>;
321+
using CollisionsFT0C = soa::Filtered<soa::Join<aod::Collisions, aod::EvSels, aod::CentFT0Cs>>;
322+
using CollisionsFT0M = soa::Filtered<soa::Join<aod::Collisions, aod::EvSels, aod::CentFT0Ms>>;
321323
using TracksExt = soa::Join<aod::TracksIU, aod::TracksCovIU, aod::TracksExtra, aod::TracksDCA, aod::pidTPCPi, aod::pidTPCKa, aod::pidTPCPr, aod::pidTOFPi, aod::pidTOFKa, aod::pidTOFPr>;
322324
using TracksExtMc = soa::Join<TracksExt, aod::McTrackLabels>;
323325

@@ -483,8 +485,8 @@ struct HfTreeCreatorOmegacSt {
483485
}
484486
PROCESS_SWITCH(HfTreeCreatorOmegacSt, processMc, "Process MC", true);
485487

486-
template <o2::hf_centrality::CentralityEstimator CentEstimator, typename TracksType>
487-
void fillTable(Collisions const& collisions,
488+
template <o2::hf_centrality::CentralityEstimator CentEstimator, typename TracksType, typename TColl>
489+
void fillTable(TColl const& collisions,
488490
aod::AssignedTrackedCascades const& trackedCascades,
489491
aod::TrackAssoc const& trackIndices,
490492
std::optional<std::reference_wrapper<aod::McParticles const>> mcParticles = std::nullopt)
@@ -500,7 +502,7 @@ struct HfTreeCreatorOmegacSt {
500502
}
501503
// record event-level monitoring (centrality, vertex, etc.)
502504
hfEvSel.fillHistograms(collision, rejectionMask, centrality);
503-
const auto bc = collision.bc_as<aod::BCsWithTimestamps>();
505+
const auto bc = collision.template bc_as<aod::BCsWithTimestamps>();
504506
if (runNumber != bc.runNumber()) {
505507
if (skimmedProcessing) {
506508
if (runNumber == 0) {
@@ -543,7 +545,7 @@ struct HfTreeCreatorOmegacSt {
543545

544546
o2::dataformats::DCA impactParameterCasc;
545547
for (const auto& trackedCascade : groupedTrackedCascades) {
546-
const auto trackCasc = trackedCascade.track_as<TracksType>();
548+
const auto trackCasc = trackedCascade.template track_as<TracksType>();
547549
int trackCascMotherId = -1;
548550
if constexpr (std::is_same<TracksType, TracksExtMc>::value) {
549551
if (trackCasc.has_mcParticle() && trackCasc.mcParticle().has_mothers()) {
@@ -560,10 +562,10 @@ struct HfTreeCreatorOmegacSt {
560562
}
561563

562564
const auto& casc = trackedCascade.cascade();
563-
const auto& bachelor = casc.bachelor_as<TracksType>();
565+
const auto& bachelor = casc.template bachelor_as<TracksType>();
564566
const auto& v0 = casc.v0();
565-
const auto& v0TrackPos = v0.posTrack_as<TracksType>();
566-
const auto& v0TrackNeg = v0.negTrack_as<TracksType>();
567+
const auto& v0TrackPos = v0.template posTrack_as<TracksType>();
568+
const auto& v0TrackNeg = v0.template negTrack_as<TracksType>();
567569

568570
if (!v0TrackPos.hasTPC() || !v0TrackNeg.hasTPC() || !bachelor.hasTPC() ||
569571
v0TrackPos.tpcNClsFindable() < minNoClsTrackedCascade ||
@@ -797,18 +799,18 @@ struct HfTreeCreatorOmegacSt {
797799
//--- do the MC Rec match
798800
if (mcParticles) {
799801
auto arrayDaughters = std::array{
800-
trackId.template track_as<TracksExtMc>(), // bachelor <- charm baryon
801-
casc.bachelor_as<TracksExtMc>(), // bachelor <- cascade
802-
v0.posTrack_as<TracksExtMc>(), // p <- lambda
803-
v0.negTrack_as<TracksExtMc>()}; // pi <- lambda
802+
trackId.template track_as<TracksExtMc>(), // bachelor <- charm baryon
803+
casc.template bachelor_as<TracksExtMc>(), // bachelor <- cascade
804+
v0.template posTrack_as<TracksExtMc>(), // p <- lambda
805+
v0.template negTrack_as<TracksExtMc>()}; // pi <- lambda
804806

805807
auto arrayDaughtersCasc = std::array{
806-
casc.bachelor_as<TracksExtMc>(), // bachelor <- cascade
807-
v0.posTrack_as<TracksExtMc>(), // p <- lambda
808-
v0.negTrack_as<TracksExtMc>()}; // pi <- lambda
808+
casc.template bachelor_as<TracksExtMc>(), // bachelor <- cascade
809+
v0.template posTrack_as<TracksExtMc>(), // p <- lambda
810+
v0.template negTrack_as<TracksExtMc>()}; // pi <- lambda
809811
auto arrayDaughtersV0 = std::array{
810-
v0.posTrack_as<TracksExtMc>(), // p <- lambda
811-
v0.negTrack_as<TracksExtMc>()}; // pi <- lambda
812+
v0.template posTrack_as<TracksExtMc>(), // p <- lambda
813+
v0.template negTrack_as<TracksExtMc>()}; // pi <- lambda
812814

813815
if (decayChannel == o2::aod::hf_cand_casc_lf::DecayType2Prong::OmegaczeroToOmegaPi) {
814816
// Match Omegac0 → Omega- + Pi+
@@ -963,7 +965,7 @@ struct HfTreeCreatorOmegacSt {
963965
PROCESS_SWITCH(HfTreeCreatorOmegacSt, processDataNocent, "Process data (No centrality)", true);
964966

965967
// FT0C centrality selection
966-
void processDataFT0C(Collisions const& collisions,
968+
void processDataFT0C(CollisionsFT0C const& collisions,
967969
soa::SmallGroups<aod::AssignedTrackedCascades> const& trackedCascades,
968970
aod::TrackAssoc const& trackIndices,
969971
aod::Cascades const&,
@@ -976,7 +978,7 @@ struct HfTreeCreatorOmegacSt {
976978
PROCESS_SWITCH(HfTreeCreatorOmegacSt, processDataFT0C, "Process data (FT0C centrality)", false);
977979

978980
// FT0M centrality selection
979-
void processDataFT0M(Collisions const& collisions,
981+
void processDataFT0M(CollisionsFT0M const& collisions,
980982
soa::SmallGroups<aod::AssignedTrackedCascades> const& trackedCascades,
981983
aod::TrackAssoc const& trackIndices,
982984
aod::Cascades const&,
@@ -1005,7 +1007,7 @@ struct HfTreeCreatorOmegacSt {
10051007
PROCESS_SWITCH(HfTreeCreatorOmegacSt, processMcRecNocent, "Process MC reco (No centrality)", false);
10061008

10071009
// MC reco: FT0C centrality selection
1008-
void processMcRecFT0C(Collisions const& collisions,
1010+
void processMcRecFT0C(CollisionsFT0C const& collisions,
10091011
aod::McCollisions const&,
10101012
soa::SmallGroups<aod::AssignedTrackedCascades> const& trackedCascades,
10111013
aod::TrackAssoc const& trackIndices,
@@ -1020,7 +1022,7 @@ struct HfTreeCreatorOmegacSt {
10201022
PROCESS_SWITCH(HfTreeCreatorOmegacSt, processMcRecFT0C, "Process MC reco (FT0C centrality)", false);
10211023

10221024
// MC reco: FT0M centrality selection
1023-
void processMcRecFT0M(Collisions const& collisions,
1025+
void processMcRecFT0M(CollisionsFT0M const& collisions,
10241026
aod::McCollisions const&,
10251027
soa::SmallGroups<aod::AssignedTrackedCascades> const& trackedCascades,
10261028
aod::TrackAssoc const& trackIndices,
@@ -1043,7 +1045,7 @@ struct HfTreeCreatorOmegacSt {
10431045
aod::McParticles const&,
10441046
aod::BCsWithTimestamps const&)
10451047
{
1046-
const auto bc = collision.bc_as<aod::BCsWithTimestamps>();
1048+
const auto bc = collision.template bc_as<aod::BCsWithTimestamps>();
10471049
if (runNumber != bc.runNumber()) {
10481050
runNumber = bc.runNumber();
10491051
auto timestamp = bc.timestamp();
@@ -1061,7 +1063,7 @@ struct HfTreeCreatorOmegacSt {
10611063
const auto primaryVertex = getPrimaryVertex(collision);
10621064
o2::dataformats::DCA impactParameterCasc;
10631065
for (const auto& trackedCascade : trackedCascades) {
1064-
const auto trackCasc = trackedCascade.track_as<TracksExtMc>();
1066+
const auto trackCasc = trackedCascade.template track_as<TracksExtMc>();
10651067
auto trackParCovCasc = getTrackParCov(trackCasc);
10661068
if (bzOnly) {
10671069
o2::base::Propagator::Instance()->propagateToDCA(primaryVertex, trackParCovCasc, bz, 2.f, matCorr, &impactParameterCasc);
@@ -1070,10 +1072,10 @@ struct HfTreeCreatorOmegacSt {
10701072
}
10711073

10721074
const auto& casc = trackedCascade.cascade();
1073-
const auto& bachelor = casc.bachelor_as<TracksExtMc>();
1075+
const auto& bachelor = casc.template bachelor_as<TracksExtMc>();
10741076
const auto& v0 = casc.v0();
1075-
const auto& v0TrackPos = v0.posTrack_as<TracksExtMc>();
1076-
const auto& v0TrackNeg = v0.negTrack_as<TracksExtMc>();
1077+
const auto& v0TrackPos = v0.template posTrack_as<TracksExtMc>();
1078+
const auto& v0TrackNeg = v0.template negTrack_as<TracksExtMc>();
10771079

10781080
if (!v0TrackPos.has_mcParticle() || !v0TrackNeg.has_mcParticle() || !bachelor.has_mcParticle()) {
10791081
continue;

0 commit comments

Comments
 (0)