@@ -64,12 +64,11 @@ using BigTracksPIDExtended = soa::Join<BigTracksPID, aod::TracksExtended>;
6464
6565namespace hf_track_index
6666{
67- DECLARE_SOA_INDEX_COLUMN_FULL (Index0, index0, int , Tracks, " _0" ); // !
68- DECLARE_SOA_INDEX_COLUMN_FULL (Index1, index1, int , Tracks, " _1" ); // !
69- DECLARE_SOA_INDEX_COLUMN_FULL (Index2, index2, int , Tracks, " _2" ); // !
70- DECLARE_SOA_INDEX_COLUMN_FULL (Index3, index3, int , Tracks, " _3" ); // !
71- DECLARE_SOA_INDEX_COLUMN_FULL (IndexV0, indexV0, int , aod::V0Datas, " _V0" ); // !
72- DECLARE_SOA_COLUMN (HFflag, hfflag, uint8_t ); // !
67+ DECLARE_SOA_INDEX_COLUMN_FULL (Index0, index0, int , Tracks, " _0" ); // ! Index to first prong
68+ DECLARE_SOA_INDEX_COLUMN_FULL (Index1, index1, int , Tracks, " _1" ); // ! Index to second prong
69+ DECLARE_SOA_INDEX_COLUMN_FULL (Index2, index2, int , Tracks, " _2" ); // ! Index to third prong
70+ DECLARE_SOA_INDEX_COLUMN (V0 , v0); // ! Index to V0 prong
71+ DECLARE_SOA_COLUMN (HFflag, hfflag, uint8_t ); // !
7372
7473DECLARE_SOA_COLUMN (D0ToKPiFlag, d0ToKPiFlag, uint8_t ); // !
7574DECLARE_SOA_COLUMN (JpsiToEEFlag, jpsiToEEFlag, uint8_t ); // !
@@ -81,27 +80,40 @@ DECLARE_SOA_COLUMN(DsKKPiFlag, dsKKPiFlag, uint8_t); //!
8180DECLARE_SOA_COLUMN (XicToPKPiFlag, xicToPKPiFlag, uint8_t ); // !
8281} // namespace hf_track_index
8382
84- DECLARE_SOA_TABLE (HfTrackIndexProng2, " AOD" , " HFTRACKIDXP2" , // !
83+ DECLARE_SOA_TABLE (Hf2Prong, " AOD" , " HF2PRONG" , // ! Table for HF 2 prong candidates
84+ o2::soa::Index<>,
8585 hf_track_index::Index0Id,
8686 hf_track_index::Index1Id,
8787 hf_track_index::HFflag);
8888
89- DECLARE_SOA_TABLE (HfTrackIndexCasc, " AOD" , " HFTRACKIDXCASC" , // !
89+ DECLARE_SOA_TABLE (HfCascade, " AOD" , " HFCASCADE" , // ! Table for HF candidates with a V0
90+ o2::soa::Index<>,
9091 hf_track_index::Index0Id,
91- hf_track_index::IndexV0Id ,
92+ hf_track_index::V0Id ,
9293 hf_track_index::HFflag);
9394
94- DECLARE_SOA_TABLE (HfCutStatusProng2, " AOD" , " HFCUTSTATUSP2" , // !
95- hf_track_index::D0ToKPiFlag,
96- hf_track_index::JpsiToEEFlag,
97- hf_track_index::JpsiToMuMuFlag);
98-
99- DECLARE_SOA_TABLE (HfTrackIndexProng3, " AOD" , " HFTRACKIDXP3" , // !
95+ DECLARE_SOA_TABLE (Hf3Prong, " AOD" , " HF3PRONG" , // ! Table for HF 3 prong candidates
96+ o2::soa::Index<>,
10097 hf_track_index::Index0Id,
10198 hf_track_index::Index1Id,
10299 hf_track_index::Index2Id,
103100 hf_track_index::HFflag);
104101
102+ namespace hf_track_index
103+ {
104+ DECLARE_SOA_INDEX_COLUMN_FULL (IndexD0, indexD0, int , Hf2Prong, " " ); // ! Index to a D0 prong
105+ } // namespace hf_track_index
106+
107+ DECLARE_SOA_TABLE (HfDStar, " AOD" , " HFDSTAR" , // ! D* -> D0pi candidates
108+ o2::soa::Index<>,
109+ hf_track_index::Index0Id,
110+ hf_track_index::IndexD0Id);
111+
112+ DECLARE_SOA_TABLE (HfCutStatusProng2, " AOD" , " HFCUTSTATUSP2" , // !
113+ hf_track_index::D0ToKPiFlag,
114+ hf_track_index::JpsiToEEFlag,
115+ hf_track_index::JpsiToMuMuFlag);
116+
105117DECLARE_SOA_TABLE (HfCutStatusProng3, " AOD" , " HFCUTSTATUSP3" , // !
106118 hf_track_index::DPlusPiKPiFlag,
107119 hf_track_index::LcPKPiFlag,
@@ -236,7 +248,7 @@ DECLARE_SOA_COLUMN(OriginMCGen, originMCGen, int8_t); //! particle origin,
236248enum DecayType { D0ToPiK = 0 ,
237249 JpsiToEE,
238250 JpsiToMuMu,
239- N2ProngDecays }; // always keep N2ProngDecays at the end
251+ N2ProngDecays }; // always keep N2ProngDecays at the end
240252
241253// functions for specific particles
242254
@@ -402,7 +414,7 @@ DECLARE_SOA_EXPRESSION_COLUMN(Py, py, //!
402414 float , 1 .f * aod::hf_cand::pyProng0 + 1 .f * aod::hf_cand::pyProng1);
403415DECLARE_SOA_EXPRESSION_COLUMN (Pz, pz, // !
404416 float , 1 .f * aod::hf_cand::pzProng0 + 1 .f * aod::hf_cand::pzProng1);
405- // DECLARE_SOA_DYNAMIC_COLUMN(M, m, [](float px0, float py0, float pz0, float px1, float py1, float pz1, const array<double, 2>& m) { return RecoDecay::M(array{array{px0, py0, pz0}, array{px1, py1, pz1}}, m); });
417+ // DECLARE_SOA_DYNAMIC_COLUMN(M, m, [](float px0, float py0, float pz0, float px1, float py1, float pz1, const array<double, 2>& m) { return RecoDecay::M(array{array{px0, py0, pz0}, array{px1, py1, pz1}}, m); });
406418DECLARE_SOA_DYNAMIC_COLUMN (PtV0Pos, ptV0Pos, // !
407419 [](float px, float py) { return RecoDecay::Pt (px, py); });
408420DECLARE_SOA_DYNAMIC_COLUMN (PtV0Neg, ptV0Neg, // !
@@ -425,15 +437,15 @@ auto InvMassGamma(const T& candidate)
425437} // namespace hf_cand_casc
426438
427439DECLARE_SOA_TABLE (HfCandCascBase, " AOD" , " HFCANDCASCBASE" , // !
428- // general columns
440+ // general columns
429441 HFCAND_COLUMNS ,
430442 // cascade specific columns
431443 hf_cand::PxProng0, hf_cand::PyProng0, hf_cand::PzProng0,
432444 hf_cand::PxProng1, hf_cand::PyProng1, hf_cand::PzProng1,
433445 hf_cand::ImpactParameter0, hf_cand::ImpactParameter1,
434446 hf_cand::ErrorImpactParameter0, hf_cand::ErrorImpactParameter1,
435447 hf_track_index::Index0Id,
436- hf_track_index::IndexV0Id , // V0 index
448+ hf_track_index::V0Id , // V0 index
437449 hf_track_index::HFflag,
438450 // V0
439451 v0data::X, v0data::Y, v0data::Z,
@@ -613,7 +625,7 @@ enum DecayType { DPlusToPiKPi = 0,
613625 LcToPKPi,
614626 DsToPiKK,
615627 XicToPKPi,
616- N3ProngDecays }; // always keep N3ProngDecays at the end
628+ N3ProngDecays }; // always keep N3ProngDecays at the end
617629
618630// functions for specific particles
619631
@@ -1132,7 +1144,7 @@ DECLARE_SOA_COLUMN(DebugMCRec, debugMCRec, int8_t); // debug flag for mi
11321144enum DecayType { LbToLcPi }; // move this to a dedicated cascade namespace in the future?
11331145
11341146// Λb → Λc+ π- → p K- π+ π-
1135- // float massLb = RecoDecay::getMassPDG(pdg::Code::kLambdaB0);
1147+ // float massLb = RecoDecay::getMassPDG(pdg::Code::kLambdaB0);
11361148template <typename T>
11371149auto CtLb (const T& candidate)
11381150{
0 commit comments