@@ -53,13 +53,14 @@ enum {
5353 kAllCutsINELg010 ,
5454 kECend ,
5555};
56- DECLARE_SOA_COLUMN (Cent, cent, float ); // ! Centrality (Multiplicity) percentile (Default: FT0M)
57- DECLARE_SOA_COLUMN (Spherocity, spherocity, float ); // ! Spherocity of the event
58- DECLARE_SOA_COLUMN (EvtPl, evtPl, float ); // ! Second harmonic event plane
59- DECLARE_SOA_COLUMN (EvtPlResAB, evtPlResAB, float ); // ! Second harmonic event plane resolution of A-B sub events
60- DECLARE_SOA_COLUMN (EvtPlResAC, evtPlResAC, float ); // ! Second harmonic event plane resolution of A-C sub events
61- DECLARE_SOA_COLUMN (EvtPlResBC, evtPlResBC, float ); // ! Second harmonic event plane resolution of B-C sub events
62- DECLARE_SOA_COLUMN (BMagField, bMagField, float ); // ! Magnetic field
56+ DECLARE_SOA_INDEX_COLUMN_FULL (Collision, collision, int , Collisions, " _Col" ); // !
57+ DECLARE_SOA_COLUMN (Cent, cent, float ); // ! Centrality (Multiplicity) percentile (Default: FT0M)
58+ DECLARE_SOA_COLUMN (Spherocity, spherocity, float ); // ! Spherocity of the event
59+ DECLARE_SOA_COLUMN (EvtPl, evtPl, float ); // ! Second harmonic event plane
60+ DECLARE_SOA_COLUMN (EvtPlResAB, evtPlResAB, float ); // ! Second harmonic event plane resolution of A-B sub events
61+ DECLARE_SOA_COLUMN (EvtPlResAC, evtPlResAC, float ); // ! Second harmonic event plane resolution of A-C sub events
62+ DECLARE_SOA_COLUMN (EvtPlResBC, evtPlResBC, float ); // ! Second harmonic event plane resolution of B-C sub events
63+ DECLARE_SOA_COLUMN (BMagField, bMagField, float ); // ! Magnetic field
6364// MC
6465DECLARE_SOA_COLUMN (IsVtxIn10, isVtxIn10, bool ); // ! Vtx10
6566DECLARE_SOA_COLUMN (IsINELgt0, isINELgt0, bool ); // ! INEL>0
@@ -71,6 +72,7 @@ DECLARE_SOA_COLUMN(ImpactParameter, impactParameter, float); //! ImpactParamete
7172} // namespace resocollision
7273DECLARE_SOA_TABLE (ResoCollisions, " AOD" , " RESOCOLLISION" ,
7374 o2::soa::Index<>,
75+ resocollision::CollisionId,
7476 o2::aod::mult::MultNTracksPV,
7577 collision::PosX,
7678 collision::PosY,
@@ -87,6 +89,7 @@ DECLARE_SOA_TABLE(ResoCollisions, "AOD", "RESOCOLLISION",
8789using ResoCollision = ResoCollisions::iterator;
8890
8991DECLARE_SOA_TABLE (ResoMCCollisions, " AOD" , " RESOMCCOL" ,
92+ o2::soa::Index<>,
9093 resocollision::IsVtxIn10,
9194 resocollision::IsINELgt0,
9295 resocollision::IsTriggerTVX,
@@ -95,44 +98,62 @@ DECLARE_SOA_TABLE(ResoMCCollisions, "AOD", "RESOMCCOL",
9598 resocollision::ImpactParameter);
9699using ResoMCCollision = ResoMCCollisions::iterator;
97100
101+ DECLARE_SOA_TABLE (ResoSpheroCollisions, " AOD" , " RESOSPHEROCOLL" ,
102+ o2::soa::Index<>,
103+ resocollision::CollisionId,
104+ resocollision::Spherocity);
105+ using ResoSpheroCollision = ResoSpheroCollisions::iterator;
106+
107+ DECLARE_SOA_TABLE (ResoEvtPlCollisions, " AOD" , " RESOEVTPLCOLL" ,
108+ o2::soa::Index<>,
109+ resocollision::CollisionId,
110+ resocollision::EvtPl,
111+ resocollision::EvtPlResAB,
112+ resocollision::EvtPlResAC,
113+ resocollision::EvtPlResBC);
114+ using ResoEvtPlCollision = ResoEvtPlCollisions::iterator;
115+
98116// Resonance Daughters
99117// inspired from PWGCF/DataModel/FemtoDerived.h
100118namespace resodaughter
101119{
102120
103121DECLARE_SOA_INDEX_COLUMN (ResoCollision, resoCollision);
104- DECLARE_SOA_COLUMN (Pt, pt, float ); // ! p_T (GeV/c)
105- DECLARE_SOA_COLUMN (Px, px, float ); // ! p_x (GeV/c)
106- DECLARE_SOA_COLUMN (Py, py, float ); // ! p_y (GeV/c)
107- DECLARE_SOA_COLUMN (Pz, pz, float ); // ! p_z (GeV/c)
108- DECLARE_SOA_COLUMN (Eta, eta, float ); // ! Eta
109- DECLARE_SOA_COLUMN (Phi, phi, float ); // ! Phi
110- DECLARE_SOA_COLUMN (PartType, partType, uint8_t ); // ! Type of the particle, according to resodaughter::ParticleType
111- DECLARE_SOA_COLUMN (TempFitVar, tempFitVar, float ); // ! Observable for the template fitting (Track: DCA_xy, V0: CPA)
112- DECLARE_SOA_COLUMN (Indices, indices, int [2 ]); // ! Field for the track indices to remove auto-correlations
113- DECLARE_SOA_COLUMN (CascadeIndices, cascIndices, int [3 ]); // ! Field for the track indices to remove auto-correlations (ordered: positive, negative, bachelor)
114- DECLARE_SOA_COLUMN (Sign, sign, int8_t ); // ! Sign of the track charge
115- DECLARE_SOA_COLUMN (TPCNClsCrossedRows, tpcNClsCrossedRows, uint8_t ); // ! Number of TPC crossed rows
116- DECLARE_SOA_COLUMN (TPCNClsFound, tpcNClsFound, uint8_t ); // ! Number of TPC clusters found
117- DECLARE_SOA_COLUMN (ITSNCls, itsNCls, uint8_t ); // ! Number of ITS clusters found
118- DECLARE_SOA_COLUMN (IsGlobalTrackWoDCA, isGlobalTrackWoDCA, bool ); // ! Is global track without DCA
119- DECLARE_SOA_COLUMN (IsGlobalTrack, isGlobalTrack, bool ); // ! Is global track
120- DECLARE_SOA_COLUMN (IsPrimaryTrack, isPrimaryTrack, bool ); // ! Is primary track
121- DECLARE_SOA_COLUMN (IsPVContributor, isPVContributor, bool ); // ! Is primary vertex contributor
122- DECLARE_SOA_COLUMN (HasITS, hasITS, bool ); // ! Has ITS
123- DECLARE_SOA_COLUMN (HasTPC, hasTPC, bool ); // ! Has TPC
124- DECLARE_SOA_COLUMN (HasTOF, hasTOF, bool ); // ! Has TOF
122+ DECLARE_SOA_INDEX_COLUMN_FULL (Track, track, int , Tracks, " _Trk" ); // !
123+ DECLARE_SOA_INDEX_COLUMN_FULL (V0, v0, int , V0s, " _V0" ); // !
124+ DECLARE_SOA_INDEX_COLUMN_FULL (Cascade, cascade, int , Cascades, " _Cas" ); // !
125+ DECLARE_SOA_COLUMN (Pt, pt, float ); // ! p_T (GeV/c)
126+ DECLARE_SOA_COLUMN (Px, px, float ); // ! p_x (GeV/c)
127+ DECLARE_SOA_COLUMN (Py, py, float ); // ! p_y (GeV/c)
128+ DECLARE_SOA_COLUMN (Pz, pz, float ); // ! p_z (GeV/c)
129+ DECLARE_SOA_COLUMN (Eta, eta, float ); // ! Eta
130+ DECLARE_SOA_COLUMN (Phi, phi, float ); // ! Phi
131+ DECLARE_SOA_COLUMN (PartType, partType, uint8_t ); // ! Type of the particle, according to resodaughter::ParticleType
132+ DECLARE_SOA_COLUMN (TempFitVar, tempFitVar, float ); // ! Observable for the template fitting (Track: DCA_xy, V0: CPA)
133+ DECLARE_SOA_COLUMN (Indices, indices, int [2 ]); // ! Field for the track indices to remove auto-correlations
134+ DECLARE_SOA_COLUMN (CascadeIndices, cascadeIndices, int [3 ]); // ! Field for the track indices to remove auto-correlations (ordered: positive, negative, bachelor)
135+ DECLARE_SOA_COLUMN (Sign, sign, int8_t ); // ! Sign of the track charge
136+ DECLARE_SOA_COLUMN (TPCNClsCrossedRows, tpcNClsCrossedRows, uint8_t ); // ! Number of TPC crossed rows
137+ DECLARE_SOA_COLUMN (TPCNClsFound, tpcNClsFound, uint8_t ); // ! Number of TPC clusters found
138+ DECLARE_SOA_COLUMN (ITSNCls, itsNCls, uint8_t ); // ! Number of ITS clusters found
139+ DECLARE_SOA_COLUMN (IsGlobalTrackWoDCA, isGlobalTrackWoDCA, bool ); // ! Is global track without DCA
140+ DECLARE_SOA_COLUMN (IsGlobalTrack, isGlobalTrack, bool ); // ! Is global track
141+ DECLARE_SOA_COLUMN (IsPrimaryTrack, isPrimaryTrack, bool ); // ! Is primary track
142+ DECLARE_SOA_COLUMN (IsPVContributor, isPVContributor, bool ); // ! Is primary vertex contributor
143+ DECLARE_SOA_COLUMN (HasITS, hasITS, bool ); // ! Has ITS
144+ DECLARE_SOA_COLUMN (HasTPC, hasTPC, bool ); // ! Has TPC
145+ DECLARE_SOA_COLUMN (HasTOF, hasTOF, bool ); // ! Has TOF
125146DECLARE_SOA_COLUMN (TPCCrossedRowsOverFindableCls, tpcCrossedRowsOverFindableCls, float );
126147DECLARE_SOA_COLUMN (DaughDCA, daughDCA, float ); // ! DCA between daughters
127- DECLARE_SOA_COLUMN (CascDaughDCA, cascdaughDCA , float ); // ! DCA between daughters from cascade
148+ DECLARE_SOA_COLUMN (CascDaughDCA, cascDaughDCA , float ); // ! DCA between daughters from cascade
128149DECLARE_SOA_COLUMN (V0CosPA, v0CosPA, float ); // ! V0 Cosine of Pointing Angle
129150DECLARE_SOA_COLUMN (CascCosPA, cascCosPA, float ); // ! Cascade Cosine of Pointing Angle
130151DECLARE_SOA_COLUMN (MLambda, mLambda , float ); // ! The invariant mass of V0 candidate, assuming lambda
131152DECLARE_SOA_COLUMN (MAntiLambda, mAntiLambda , float ); // ! The invariant mass of V0 candidate, assuming antilambda
132153DECLARE_SOA_COLUMN (MK0Short, mK0Short , float ); // ! The invariant mass of V0 candidate, assuming k0s
133154DECLARE_SOA_COLUMN (MXi, mXi , float ); // ! The invariant mass of Xi candidate
134155DECLARE_SOA_COLUMN (TransRadius, transRadius, float ); // ! Transverse radius of the decay vertex
135- DECLARE_SOA_COLUMN (CascTransRadius, casctransRadius , float ); // ! Transverse radius of the decay vertex from cascade
156+ DECLARE_SOA_COLUMN (CascTransRadius, cascTransRadius , float ); // ! Transverse radius of the decay vertex from cascade
136157DECLARE_SOA_COLUMN (DecayVtxX, decayVtxX, float ); // ! X position of the decay vertex
137158DECLARE_SOA_COLUMN (DecayVtxY, decayVtxY, float ); // ! Y position of the decay vertex
138159DECLARE_SOA_COLUMN (DecayVtxZ, decayVtxZ, float ); // ! Z position of the decay vertex
@@ -158,19 +179,20 @@ DECLARE_SOA_COLUMN(DaughterTOFNSigmaBachPr, daughterTOFNSigmaBachPr, float); //!
158179DECLARE_SOA_INDEX_COLUMN (McParticle, mcParticle); // ! Index of the corresponding MC particle
159180DECLARE_SOA_COLUMN (IsPhysicalPrimary, isPhysicalPrimary, bool );
160181DECLARE_SOA_COLUMN (ProducedByGenerator, producedByGenerator, bool );
161- DECLARE_SOA_COLUMN (MothersId , motherId, int ); // ! Id of the mother particle
182+ DECLARE_SOA_COLUMN (MotherId , motherId, int ); // ! Id of the mother particle
162183DECLARE_SOA_COLUMN (MotherPDG, motherPDG, int ); // ! PDG code of the mother particle
163184DECLARE_SOA_COLUMN (DaughterPDG1, daughterPDG1, int ); // ! PDG code of the first Daughter particle
164185DECLARE_SOA_COLUMN (DaughterPDG2, daughterPDG2, int ); // ! PDG code of the second Daughter particle
165- DECLARE_SOA_COLUMN (DaughterID1, daughterId1 , int ); // ! Id of the first Daughter particle
166- DECLARE_SOA_COLUMN (DaughterID2, daughterId2 , int ); // ! Id of the second Daughter particle
186+ DECLARE_SOA_COLUMN (DaughterID1, daughterID1 , int ); // ! Id of the first Daughter particle
187+ DECLARE_SOA_COLUMN (DaughterID2, daughterID2 , int ); // ! Id of the second Daughter particle
167188DECLARE_SOA_COLUMN (SiblingIds, siblingIds, int [2 ]); // ! Index of the particles with the same mother
168- DECLARE_SOA_COLUMN (BachTrkID, bachtrkID , int ); // ! Id of the bach track from cascade
189+ DECLARE_SOA_COLUMN (BachTrkID, bachTrkID , int ); // ! Id of the bach track from cascade
169190DECLARE_SOA_COLUMN (V0ID, v0ID, int ); // ! Id of the V0 from cascade
170191} // namespace resodaughter
171192DECLARE_SOA_TABLE (ResoTracks, " AOD" , " RESOTRACKS" ,
172193 o2::soa::Index<>,
173194 resodaughter::ResoCollisionId,
195+ resodaughter::TrackId,
174196 resodaughter::Pt,
175197 resodaughter::Px,
176198 resodaughter::Py,
@@ -211,6 +233,7 @@ using ResoTrack = ResoTracks::iterator;
211233DECLARE_SOA_TABLE (ResoV0s, " AOD" , " RESOV0S" ,
212234 o2::soa::Index<>,
213235 resodaughter::ResoCollisionId,
236+ resodaughter::V0Id,
214237 resodaughter::Pt,
215238 resodaughter::Px,
216239 resodaughter::Py,
@@ -247,6 +270,7 @@ using ResoV0 = ResoV0s::iterator;
247270DECLARE_SOA_TABLE (ResoCascades, " AOD" , " RESOCASCADES" ,
248271 o2::soa::Index<>,
249272 resodaughter::ResoCollisionId,
273+ resodaughter::CascadeId,
250274 resodaughter::Pt,
251275 resodaughter::Px,
252276 resodaughter::Py,
@@ -293,7 +317,7 @@ using ResoCascade = ResoCascades::iterator;
293317
294318DECLARE_SOA_TABLE (ResoMCTracks, " AOD" , " RESOMCTRACKS" ,
295319 mcparticle::PdgCode,
296- resodaughter::MothersId ,
320+ resodaughter::MotherId ,
297321 resodaughter::MotherPDG,
298322 resodaughter::SiblingIds,
299323 resodaughter::IsPhysicalPrimary,
@@ -302,7 +326,7 @@ using ResoMCTrack = ResoMCTracks::iterator;
302326
303327DECLARE_SOA_TABLE (ResoMCV0s, " AOD" , " RESOMCV0S" ,
304328 mcparticle::PdgCode,
305- resodaughter::MothersId ,
329+ resodaughter::MotherId ,
306330 resodaughter::MotherPDG,
307331 resodaughter::DaughterID1,
308332 resodaughter::DaughterID2,
@@ -314,7 +338,7 @@ using ResoMCV0 = ResoMCV0s::iterator;
314338
315339DECLARE_SOA_TABLE (ResoMCCascades, " AOD" , " RESOMCCASCADES" ,
316340 mcparticle::PdgCode,
317- resodaughter::MothersId ,
341+ resodaughter::MotherId ,
318342 resodaughter::MotherPDG,
319343 resodaughter::BachTrkID,
320344 resodaughter::V0ID,
@@ -349,5 +373,17 @@ using Reso2TracksMC = soa::Join<aod::FullTracks, McTrackLabels>;
349373using Reso2TracksPID = soa::Join<aod::FullTracks, aod::pidTPCPi, aod::pidTPCKa, aod::pidTPCPr, aod::pidTPCEl, aod::pidTOFPi, aod::pidTOFKa, aod::pidTOFPr, aod::pidTOFEl>;
350374using Reso2TracksPIDExt = soa::Join<Reso2TracksPID, aod::TracksDCA, aod::TrackSelection, aod::TrackSelectionExtension>; // Without Extra
351375
376+ using ResoCollisionCandidates = soa::Join<aod::Collisions, aod::EvSels, aod::CentFV0As, aod::CentFT0Ms, aod::CentFT0Cs, aod::CentFT0As, aod::Mults>;
377+ using ResoRun2CollisionCandidates = soa::Join<aod::Collisions, aod::EvSels, aod::CentRun2V0Ms>;
378+ using ResoCollisionCandidatesMC = soa::Join<ResoCollisionCandidates, aod::McCollisionLabels>;
379+ using ResoRun2CollisionCandidatesMC = soa::Join<ResoRun2CollisionCandidates, aod::McCollisionLabels>;
380+ using ResoTrackCandidates = aod::Reso2TracksPIDExt;
381+ using ResoTrackCandidatesMC = soa::Join<ResoTrackCandidates, aod::McTrackLabels>;
382+ using ResoV0Candidates = aod::V0Datas;
383+ using ResoV0CandidatesMC = soa::Join<ResoV0Candidates, aod::McV0Labels>;
384+ using ResoCascadesCandidates = aod::CascDatas;
385+ using ResoCascadesCandidatesMC = soa::Join<ResoCascadesCandidates, aod::McCascLabels>;
386+ using BCsWithRun2Info = soa::Join<aod::BCs, aod::Run2BCInfos, aod::Timestamps>;
387+
352388} // namespace o2::aod
353389#endif // PWGLF_DATAMODEL_LFRESONANCETABLES_H_
0 commit comments