Skip to content

Commit f6b4653

Browse files
authored
[PWGHF] Fix track vector type + minor fixes (#11908)
1 parent 6ec23c9 commit f6b4653

File tree

1 file changed

+24
-24
lines changed

1 file changed

+24
-24
lines changed

PWGHF/D2H/TableProducer/dataCreatorCharmResoReduced.cxx

Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -259,8 +259,8 @@ struct HfDataCreatorCharmResoReduced {
259259
using CandsDplusFilteredWithMl = soa::Filtered<soa::Join<aod::HfCand3Prong, aod::HfSelDplusToPiKPi, aod::HfMlDplusToPiKPi>>;
260260
using CandsDstarFiltered = soa::Filtered<soa::Join<aod::HfD0FromDstar, aod::HfCandDstars, aod::HfSelDstarToD0Pi>>;
261261
using CandsDstarFilteredWithMl = soa::Filtered<soa::Join<aod::HfD0FromDstar, aod::HfCandDstars, aod::HfSelDstarToD0Pi, aod::HfMlDstarToD0Pi>>;
262-
using CandsD0Filtered = soa::Filtered<soa::Join<aod::HfCand2ProngWPid, aod::HfSelD0>>;
263-
using CandsD0FilteredWithMl = soa::Filtered<soa::Join<aod::HfCand2ProngWPid, aod::HfSelD0, aod::HfMlD0>>;
262+
using CandsD0Filtered = soa::Filtered<soa::Join<aod::HfCand2Prong, aod::HfSelD0>>;
263+
using CandsD0FilteredWithMl = soa::Filtered<soa::Join<aod::HfCand2Prong, aod::HfSelD0, aod::HfMlD0>>;
264264
using TracksWithPID = soa::Join<aod::Tracks, aod::TracksCov, aod::TracksExtra, aod::TrackSelection, aod::TracksDCA, aod::pidTPCFullPi, aod::pidTOFFullPi, aod::pidTPCFullKa, aod::pidTOFFullKa, aod::pidTPCFullPr, aod::pidTOFFullPr>;
265265
using TracksIUWithPID = soa::Join<aod::TracksIU, aod::TracksExtra, aod::TracksCovIU, aod::pidTPCPi, aod::pidTOFFullPi, aod::pidTPCPr, aod::pidTOFFullPr>;
266266
using TracksIUWithPIDAndMC = soa::Join<TracksIUWithPID, aod::McTrackLabels>;
@@ -840,8 +840,8 @@ struct HfDataCreatorCharmResoReduced {
840840
std::map<int64_t, int64_t> selectedV0s;
841841
std::map<int64_t, int64_t> selectedTracks;
842842
bool fillHfReducedCollision = false;
843-
const bool doTracks = pairingType == PairingType::TrackOnly || pairingType == PairingType::V0AndTrack;
844-
const bool doV0s = pairingType == PairingType::V0Only || pairingType == PairingType::V0AndTrack;
843+
constexpr bool DoTracks = pairingType == PairingType::TrackOnly || pairingType == PairingType::V0AndTrack;
844+
constexpr bool DoV0s = pairingType == PairingType::V0Only || pairingType == PairingType::V0AndTrack;
845845
auto bc = collision.template bc_as<aod::BCsWithTimestamps>();
846846
if (runNumber != bc.runNumber()) {
847847
LOG(info) << ">>>>>>>>>>>> Current run number: " << runNumber;
@@ -858,7 +858,7 @@ struct HfDataCreatorCharmResoReduced {
858858
std::array<int, 3> prongIdsD;
859859
int8_t dtype{0};
860860
std::array<float, 6> bdtScores = {-1.f, -1.f, -1.f, -1.f, -1.f, -1.f};
861-
std::vector<typename TrIU::iterator> charmHadDauTracks{};
861+
std::vector<std::decay_t<typename TrIU::iterator>> charmHadDauTracks{};
862862
varUtils.ptD = candD.pt();
863863
if constexpr (dType == DType::Dstar) {
864864
varUtils.signD = candD.signSoftPi();
@@ -943,7 +943,7 @@ struct HfDataCreatorCharmResoReduced {
943943
}
944944

945945
// Loop on the bachelor V0s
946-
if constexpr (doV0s) {
946+
if constexpr (DoV0s) {
947947
for (const auto& v0 : bachelorV0s) {
948948
auto trackPos = v0.template posTrack_as<TrIU>();
949949
auto trackNeg = v0.template negTrack_as<TrIU>();
@@ -1082,7 +1082,7 @@ struct HfDataCreatorCharmResoReduced {
10821082
fillHfCandD = true;
10831083
// Optional filling of MC Rec table, for now only implemented for Ds1->D*K0s and Ds2*->D+K0s
10841084
if constexpr (doMc && (dType == DType::Dstar || dType == DType::Dplus)) {
1085-
std::vector<typename Tr::iterator> charmResoDauTracks{};
1085+
std::vector<std::decay_t<typename TrIU::iterator>> charmResoDauTracks{};
10861086
for (const auto& track : charmHadDauTracks) {
10871087
charmResoDauTracks.push_back(track);
10881088
}
@@ -1095,7 +1095,7 @@ struct HfDataCreatorCharmResoReduced {
10951095
} // end of loop on V0 candidates
10961096
} // end of do V0s
10971097
// Loop on the bachelor tracks
1098-
if constexpr (doTracks) {
1098+
if constexpr (DoTracks) {
10991099
for (const auto& trackIndex : bachelorTrks) {
11001100
auto track = tracks.rawIteratorAt(trackIndex.trackId());
11011101
if (!isTrackSelected(track, prongIdsD)) {
@@ -1485,7 +1485,7 @@ struct HfDataCreatorCharmResoReduced {
14851485
auto thisCollId = collision.globalIndex();
14861486
auto candsDThisColl = candsDstar.sliceBy(candsDstarPerCollision, thisCollId);
14871487
auto v0sThisColl = v0s.sliceBy(candsV0PerCollision, thisCollId);
1488-
runDataCreation<false, false, DType::Dstar, PairingType::V0Only>(collision, candsDThisColl, v0sThisColl, v0sThisColl, tracksIU, tracksIU, tracksIU, bcs);
1488+
runDataCreation<false, false, DType::Dstar, PairingType::V0Only>(collision, candsDThisColl, v0sThisColl, nullptr, tracksIU, tracksIU, nullptr, bcs);
14891489
}
14901490
// handle normalization by the right number of collisions
14911491
hfCollisionCounter(collisions.tableSize(), zvtxColl, sel8Coll, zvtxAndSel8Coll, zvtxAndSel8CollAndSoftTrig, allSelColl);
@@ -1509,7 +1509,7 @@ struct HfDataCreatorCharmResoReduced {
15091509
auto thisCollId = collision.globalIndex();
15101510
auto candsDThisColl = candsDstar.sliceBy(candsDstarPerCollision, thisCollId);
15111511
auto trackIdsThisColl = trackIndices.sliceBy(trackIndicesPerCollision, thisCollId);
1512-
runDataCreation<false, false, DType::Dstar, PairingType::TrackOnly>(collision, candsDThisColl, trackIdsThisColl, trackIdsThisColl, tracks, tracks, tracks, bcs);
1512+
runDataCreation<false, false, DType::Dstar, PairingType::TrackOnly>(collision, candsDThisColl, nullptr, trackIdsThisColl, tracks, tracks, nullptr, bcs);
15131513
}
15141514
// handle normalization by the right number of collisions
15151515
hfCollisionCounter(collisions.tableSize(), zvtxColl, sel8Coll, zvtxAndSel8Coll, zvtxAndSel8CollAndSoftTrig, allSelColl);
@@ -1559,7 +1559,7 @@ struct HfDataCreatorCharmResoReduced {
15591559
auto thisCollId = collision.globalIndex();
15601560
auto candsDThisColl = candsDplus.sliceBy(candsDplusPerCollision, thisCollId);
15611561
auto v0sThisColl = v0s.sliceBy(candsV0PerCollision, thisCollId);
1562-
runDataCreation<false, false, DType::Dplus, PairingType::V0Only>(collision, candsDThisColl, v0sThisColl, v0sThisColl, tracksIU, tracksIU, tracksIU, bcs);
1562+
runDataCreation<false, false, DType::Dplus, PairingType::V0Only>(collision, candsDThisColl, v0sThisColl, nullptr, tracksIU, tracksIU, nullptr, bcs);
15631563
}
15641564
// handle normalization by the right number of collisions
15651565
hfCollisionCounter(collisions.tableSize(), zvtxColl, sel8Coll, zvtxAndSel8Coll, zvtxAndSel8CollAndSoftTrig, allSelColl);
@@ -1583,7 +1583,7 @@ struct HfDataCreatorCharmResoReduced {
15831583
auto thisCollId = collision.globalIndex();
15841584
auto candsDThisColl = candsDplus.sliceBy(candsDplusPerCollision, thisCollId);
15851585
auto trackIdsThisColl = trackIndices.sliceBy(trackIndicesPerCollision, thisCollId);
1586-
runDataCreation<false, false, DType::Dplus, PairingType::TrackOnly>(collision, candsDThisColl, trackIdsThisColl, trackIdsThisColl, tracks, tracks, tracks, bcs);
1586+
runDataCreation<false, false, DType::Dplus, PairingType::TrackOnly>(collision, candsDThisColl, nullptr, trackIdsThisColl, tracks, tracks, nullptr, bcs);
15871587
}
15881588
// handle normalization by the right number of collisions
15891589
hfCollisionCounter(collisions.tableSize(), zvtxColl, sel8Coll, zvtxAndSel8Coll, zvtxAndSel8CollAndSoftTrig, allSelColl);
@@ -1633,7 +1633,7 @@ struct HfDataCreatorCharmResoReduced {
16331633
auto thisCollId = collision.globalIndex();
16341634
auto candsDThisColl = candsD0.sliceBy(candsD0PerCollision, thisCollId);
16351635
auto v0sThisColl = v0s.sliceBy(candsV0PerCollision, thisCollId);
1636-
runDataCreation<false, false, DType::D0, PairingType::V0Only>(collision, candsDThisColl, v0sThisColl, v0sThisColl, tracksIU, tracksIU, tracksIU, bcs);
1636+
runDataCreation<false, false, DType::D0, PairingType::V0Only>(collision, candsDThisColl, v0sThisColl, nullptr, tracksIU, tracksIU, nullptr, bcs);
16371637
}
16381638
// handle normalization by the right number of collisions
16391639
hfCollisionCounter(collisions.tableSize(), zvtxColl, sel8Coll, zvtxAndSel8Coll, zvtxAndSel8CollAndSoftTrig, allSelColl);
@@ -1657,7 +1657,7 @@ struct HfDataCreatorCharmResoReduced {
16571657
auto thisCollId = collision.globalIndex();
16581658
auto candsDThisColl = candsD0.sliceBy(candsD0PerCollision, thisCollId);
16591659
auto trackIdsThisColl = trackIndices.sliceBy(trackIndicesPerCollision, thisCollId);
1660-
runDataCreation<false, false, DType::D0, PairingType::TrackOnly>(collision, candsDThisColl, trackIdsThisColl, trackIdsThisColl, tracks, tracks, tracks, bcs);
1660+
runDataCreation<false, false, DType::D0, PairingType::TrackOnly>(collision, candsDThisColl, nullptr, trackIdsThisColl, tracks, tracks, nullptr, bcs);
16611661
}
16621662
// handle normalization by the right number of collisions
16631663
hfCollisionCounter(collisions.tableSize(), zvtxColl, sel8Coll, zvtxAndSel8Coll, zvtxAndSel8CollAndSoftTrig, allSelColl);
@@ -1709,7 +1709,7 @@ struct HfDataCreatorCharmResoReduced {
17091709
auto thisCollId = collision.globalIndex();
17101710
auto candsDThisColl = candsDstar.sliceBy(candsDstarPerCollision, thisCollId);
17111711
auto v0sThisColl = v0s.sliceBy(candsV0PerCollision, thisCollId);
1712-
runDataCreation<false, true, DType::Dstar, PairingType::V0Only>(collision, candsDThisColl, v0sThisColl, v0sThisColl, tracksIU, tracksIU, particlesMc, bcs);
1712+
runDataCreation<false, true, DType::Dstar, PairingType::V0Only>(collision, candsDThisColl, v0sThisColl, nullptr, tracksIU, tracksIU, particlesMc, bcs);
17131713
}
17141714
runMcGen<DecayChannel::DstarV0>(particlesMc);
17151715
// handle normalization by the right number of collisions
@@ -1735,7 +1735,7 @@ struct HfDataCreatorCharmResoReduced {
17351735
auto thisCollId = collision.globalIndex();
17361736
auto candsDThisColl = candsDplus.sliceBy(candsDplusPerCollision, thisCollId);
17371737
auto v0sThisColl = v0s.sliceBy(candsV0PerCollision, thisCollId);
1738-
runDataCreation<false, true, DType::Dplus, PairingType::V0Only>(collision, candsDThisColl, v0sThisColl, v0sThisColl, tracksIU, tracksIU, particlesMc, bcs);
1738+
runDataCreation<false, true, DType::Dplus, PairingType::V0Only>(collision, candsDThisColl, v0sThisColl, nullptr, tracksIU, tracksIU, particlesMc, bcs);
17391739
}
17401740
runMcGen<DecayChannel::DplusV0>(particlesMc);
17411741
// handle normalization by the right number of collisions
@@ -1764,7 +1764,7 @@ struct HfDataCreatorCharmResoReduced {
17641764
auto thisCollId = collision.globalIndex();
17651765
auto candsDThisColl = candsDstar.sliceBy(candsDstarPerCollisionWithMl, thisCollId);
17661766
auto v0sThisColl = v0s.sliceBy(candsV0PerCollision, thisCollId);
1767-
runDataCreation<true, false, DType::Dstar, PairingType::V0Only>(collision, candsDThisColl, v0sThisColl, v0sThisColl, tracksIU, tracksIU, tracksIU, bcs);
1767+
runDataCreation<true, false, DType::Dstar, PairingType::V0Only>(collision, candsDThisColl, v0sThisColl, nullptr, tracksIU, tracksIU, nullptr, bcs);
17681768
}
17691769
// handle normalization by the right number of collisions
17701770
hfCollisionCounter(collisions.tableSize(), zvtxColl, sel8Coll, zvtxAndSel8Coll, zvtxAndSel8CollAndSoftTrig, allSelColl);
@@ -1788,7 +1788,7 @@ struct HfDataCreatorCharmResoReduced {
17881788
auto thisCollId = collision.globalIndex();
17891789
auto candsDThisColl = candsDstar.sliceBy(candsDstarPerCollisionWithMl, thisCollId);
17901790
auto trackIdsThisColl = trackIndices.sliceBy(trackIndicesPerCollision, thisCollId);
1791-
runDataCreation<true, false, DType::Dstar, PairingType::TrackOnly>(collision, candsDThisColl, trackIdsThisColl, trackIdsThisColl, tracks, tracks, tracks, bcs);
1791+
runDataCreation<true, false, DType::Dstar, PairingType::TrackOnly>(collision, candsDThisColl, nullptr, trackIdsThisColl, tracks, tracks, nullptr, bcs);
17921792
}
17931793
// handle normalization by the right number of collisions
17941794
hfCollisionCounter(collisions.tableSize(), zvtxColl, sel8Coll, zvtxAndSel8Coll, zvtxAndSel8CollAndSoftTrig, allSelColl);
@@ -1838,7 +1838,7 @@ struct HfDataCreatorCharmResoReduced {
18381838
auto thisCollId = collision.globalIndex();
18391839
auto candsDThisColl = candsDplus.sliceBy(candsDplusPerCollisionWithMl, thisCollId);
18401840
auto v0sThisColl = v0s.sliceBy(candsV0PerCollision, thisCollId);
1841-
runDataCreation<true, false, DType::Dplus, PairingType::V0Only>(collision, candsDThisColl, v0sThisColl, v0sThisColl, tracksIU, tracksIU, tracksIU, bcs);
1841+
runDataCreation<true, false, DType::Dplus, PairingType::V0Only>(collision, candsDThisColl, v0sThisColl, nullptr, tracksIU, tracksIU, nullptr, bcs);
18421842
}
18431843
// handle normalization by the right number of collisions
18441844
hfCollisionCounter(collisions.tableSize(), zvtxColl, sel8Coll, zvtxAndSel8Coll, zvtxAndSel8CollAndSoftTrig, allSelColl);
@@ -1862,7 +1862,7 @@ struct HfDataCreatorCharmResoReduced {
18621862
auto thisCollId = collision.globalIndex();
18631863
auto candsDThisColl = candsDplus.sliceBy(candsDplusPerCollisionWithMl, thisCollId);
18641864
auto trackIdsThisColl = trackIndices.sliceBy(trackIndicesPerCollision, thisCollId);
1865-
runDataCreation<true, false, DType::Dplus, PairingType::TrackOnly>(collision, candsDThisColl, trackIdsThisColl, trackIdsThisColl, tracks, tracks, tracks, bcs);
1865+
runDataCreation<true, false, DType::Dplus, PairingType::TrackOnly>(collision, candsDThisColl, nullptr, trackIdsThisColl, tracks, tracks, nullptr, bcs);
18661866
}
18671867
// handle normalization by the right number of collisions
18681868
hfCollisionCounter(collisions.tableSize(), zvtxColl, sel8Coll, zvtxAndSel8Coll, zvtxAndSel8CollAndSoftTrig, allSelColl);
@@ -1912,7 +1912,7 @@ struct HfDataCreatorCharmResoReduced {
19121912
auto thisCollId = collision.globalIndex();
19131913
auto candsDThisColl = candsD0.sliceBy(candsD0PerCollisionWithMl, thisCollId);
19141914
auto v0sThisColl = v0s.sliceBy(candsV0PerCollision, thisCollId);
1915-
runDataCreation<true, false, DType::D0, PairingType::V0Only>(collision, candsDThisColl, v0sThisColl, v0sThisColl, tracksIU, tracksIU, tracksIU, bcs);
1915+
runDataCreation<true, false, DType::D0, PairingType::V0Only>(collision, candsDThisColl, v0sThisColl, nullptr, tracksIU, tracksIU, nullptr, bcs);
19161916
}
19171917
// handle normalization by the right number of collisions
19181918
hfCollisionCounter(collisions.tableSize(), zvtxColl, sel8Coll, zvtxAndSel8Coll, zvtxAndSel8CollAndSoftTrig, allSelColl);
@@ -1936,7 +1936,7 @@ struct HfDataCreatorCharmResoReduced {
19361936
auto thisCollId = collision.globalIndex();
19371937
auto candsDThisColl = candsD0.sliceBy(candsD0PerCollisionWithMl, thisCollId);
19381938
auto trackIdsThisColl = trackIndices.sliceBy(trackIndicesPerCollision, thisCollId);
1939-
runDataCreation<true, false, DType::D0, PairingType::TrackOnly>(collision, candsDThisColl, trackIdsThisColl, trackIdsThisColl, tracks, tracks, tracks, bcs);
1939+
runDataCreation<true, false, DType::D0, PairingType::TrackOnly>(collision, candsDThisColl, nullptr, trackIdsThisColl, tracks, tracks, nullptr, bcs);
19401940
}
19411941
// handle normalization by the right number of collisions
19421942
hfCollisionCounter(collisions.tableSize(), zvtxColl, sel8Coll, zvtxAndSel8Coll, zvtxAndSel8CollAndSoftTrig, allSelColl);
@@ -1988,7 +1988,7 @@ struct HfDataCreatorCharmResoReduced {
19881988
auto thisCollId = collision.globalIndex();
19891989
auto candsDThisColl = candsDstar.sliceBy(candsDstarPerCollision, thisCollId);
19901990
auto v0sThisColl = v0s.sliceBy(candsV0PerCollision, thisCollId);
1991-
runDataCreation<true, true, DType::Dstar, PairingType::V0Only>(collision, candsDThisColl, v0sThisColl, v0sThisColl, tracksIU, tracksIU, particlesMc, bcs);
1991+
runDataCreation<true, true, DType::Dstar, PairingType::V0Only>(collision, candsDThisColl, v0sThisColl, nullptr, tracksIU, tracksIU, particlesMc, bcs);
19921992
}
19931993
runMcGen<DecayChannel::DstarV0>(particlesMc);
19941994
// handle normalization by the right number of collisions
@@ -2014,7 +2014,7 @@ struct HfDataCreatorCharmResoReduced {
20142014
auto thisCollId = collision.globalIndex();
20152015
auto candsDThisColl = candsDplus.sliceBy(candsDplusPerCollision, thisCollId);
20162016
auto v0sThisColl = v0s.sliceBy(candsV0PerCollision, thisCollId);
2017-
runDataCreation<true, true, DType::Dplus, PairingType::V0Only>(collision, candsDThisColl, v0sThisColl, v0sThisColl, tracksIU, tracksIU, particlesMc, bcs);
2017+
runDataCreation<true, true, DType::Dplus, PairingType::V0Only>(collision, candsDThisColl, v0sThisColl, nullptr, tracksIU, tracksIU, particlesMc, bcs);
20182018
}
20192019
runMcGen<DecayChannel::DplusV0>(particlesMc);
20202020
// handle normalization by the right number of collisions

0 commit comments

Comments
 (0)