Skip to content

Commit 8f87741

Browse files
committed
Adding Ds and Xic to jet framework
1 parent 9cfa928 commit 8f87741

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

46 files changed

+2015
-59
lines changed

PWGJE/Core/JetCandidateUtilities.h

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -205,11 +205,11 @@ auto matchedParticle(const T& candidate, const U& tracks, const V& particles)
205205
* @param candidate candidate that is being checked
206206
* @param table the table to be sliced
207207
*/
208-
template <typename T, typename U, typename V, typename M, typename N, typename O, typename P, typename Q, typename R>
209-
auto slicedPerCandidate(T const& table, U const& candidate, V const& perD0Candidate, M const& perDplusCandidate, N const& perDstarCandidate, O const& perLcCandidate, P const& perB0Candidate, Q const& perBplusCandidate, R const& perDielectronCandidate)
208+
template <typename T, typename U, typename V, typename M, typename N, typename O, typename P, typename Q, typename R, typename S, typename A>
209+
auto slicedPerCandidate(T const& table, U const& candidate, V const& perD0Candidate, M const& perDplusCandidate, N const& perDsCandidate, O const& perDstarCandidate, P const& perLcCandidate, Q const& perB0Candidate, R const& perBplusCandidate, S const& perXicToXiPiPiCandidate, A const& perDielectronCandidate)
210210
{
211211
if constexpr (jethfutilities::isHFCandidate<U>()) {
212-
return jethfutilities::slicedPerHFCandidate(table, candidate, perD0Candidate, perDplusCandidate, perDstarCandidate, perLcCandidate, perB0Candidate, perBplusCandidate);
212+
return jethfutilities::slicedPerHFCandidate(table, candidate, perD0Candidate, perDplusCandidate, perDsCandidate, perDstarCandidate, perLcCandidate, perB0Candidate, perBplusCandidate, perXicToXiPiPiCandidate);
213213
} else if constexpr (jetdqutilities::isDielectronCandidate<U>()) {
214214
return jetdqutilities::slicedPerDielectronCandidate(table, candidate, perDielectronCandidate);
215215
} else {
@@ -223,11 +223,11 @@ auto slicedPerCandidate(T const& table, U const& candidate, V const& perD0Candid
223223
* @param jet jet that the slice is based on
224224
* @param table the table to be sliced
225225
*/
226-
template <typename CandidateTable, typename T, typename U, typename V, typename M, typename N, typename O, typename P, typename Q, typename R>
227-
auto slicedPerJet(T const& table, U const& jet, V const& perD0Jet, M const& perDplusJet, N const& perDstarJet, O const& perLcJet, P const& perB0Jet, Q const& perBplusJet, R const& perDielectronJet)
226+
template <typename CandidateTable, typename T, typename U, typename V, typename M, typename N, typename O, typename P, typename Q, typename R, typename S, typename A>
227+
auto slicedPerJet(T const& table, U const& jet, V const& perD0Jet, M const& perDplusJet, N const& perDsJet, O const& perDstarJet, P const& perLcJet, Q const& perB0Jet, R const& perBplusJet, S const& perXicToXiPiPiJet, A const& perDielectronJet)
228228
{
229229
if constexpr (jethfutilities::isHFTable<CandidateTable>() || jethfutilities::isHFMcTable<CandidateTable>()) {
230-
return jethfutilities::slicedPerHFJet<CandidateTable>(table, jet, perD0Jet, perDplusJet, perDstarJet, perLcJet, perB0Jet, perBplusJet);
230+
return jethfutilities::slicedPerHFJet<CandidateTable>(table, jet, perD0Jet, perDplusJet, perDsJet, perDstarJet, perLcJet, perB0Jet, perBplusJet, perXicToXiPiPiJet);
231231
} else if constexpr (jetdqutilities::isDielectronTable<CandidateTable>() || jetdqutilities::isDielectronMcTable<CandidateTable>()) {
232232
return jetdqutilities::slicedPerDielectronJet<CandidateTable>(table, jet, perDielectronJet);
233233
} else {

PWGJE/Core/JetHFUtilities.h

Lines changed: 300 additions & 5 deletions
Large diffs are not rendered by default.

PWGJE/DataModel/Jet.h

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -181,10 +181,12 @@ DECLARE_JET_TABLES_LEVELS(Full, JTrackSub, HfD0Bases, HfD0PBases, "F");
181181
DECLARE_JET_TABLES_LEVELS(Neutral, JTrackSub, HfD0Bases, HfD0PBases, "N");
182182
DECLARE_JET_TABLES_LEVELS(D0Charged, JTrackD0Sub, HfD0Bases, HfD0PBases, "D0");
183183
DECLARE_JET_TABLES_LEVELS(DplusCharged, JTrackDplusSub, HfDplusBases, HfDplusPBases, "DP");
184+
DECLARE_JET_TABLES_LEVELS(DsCharged, JTrackDsSub, HfDsBases, HfDsPBases, "DS");
184185
DECLARE_JET_TABLES_LEVELS(DstarCharged, JTrackDstarSub, HfDstarBases, HfDstarPBases, "DST");
185186
DECLARE_JET_TABLES_LEVELS(LcCharged, JTrackLcSub, HfLcBases, HfLcPBases, "Lc");
186187
DECLARE_JET_TABLES_LEVELS(B0Charged, JTrackB0Sub, HfB0Bases, HfB0PBases, "B0");
187188
DECLARE_JET_TABLES_LEVELS(BplusCharged, JTrackBplusSub, HfBplusBases, HfBplusPBases, "BP");
189+
DECLARE_JET_TABLES_LEVELS(XicToXiPiPiCharged, JTrackXicToXiPiPiSub, HfXicToXiPiPiBases, HfXicToXiPiPiPBases, "XICXPP");
188190
DECLARE_JET_TABLES_LEVELS(V0Charged, JTrackSub, V0Cores, JV0Mcs, "V0");
189191
DECLARE_JET_TABLES_LEVELS(DielectronCharged, JTrackSub, Dielectrons, JDielectronMcs, "DIEL");
190192

@@ -231,6 +233,14 @@ using JetParticlesSubDplus = JMcParticleDplusSubs;
231233
using McCollisionsDplus = o2::soa::Join<HfDplusMcCollBases, JDplusMcCollisionIds>;
232234
using CandidatesDplusMCP = o2::soa::Join<HfDplusPBases, JDplusPIds>;
233235

236+
using CollisionsDs = o2::soa::Join<HfDsCollBases, JDsCollisionIds>;
237+
using CandidatesDsData = o2::soa::Join<HfDsBases, HfDsPars, HfDsParEs, HfDsSels, HfDsMls, JDsIds>;
238+
using CandidatesDsMCD = o2::soa::Join<HfDsBases, HfDsPars, HfDsParEs, HfDsSels, HfDsMls, HfDsMcs, JDsIds>;
239+
using JetTracksSubDs = JTrackDsSubs;
240+
using JetParticlesSubDs = JMcParticleDsSubs;
241+
using McCollisionsDs = o2::soa::Join<HfDsMcCollBases, JDsMcCollisionIds>;
242+
using CandidatesDsMCP = o2::soa::Join<HfDsPBases, JDsPIds>;
243+
234244
using CollisionsDstar = o2::soa::Join<HfDstarCollBases, JDstarCollisionIds>;
235245
using CandidatesDstarData = o2::soa::Join<HfDstarBases, HfDstarPars, HfDstarParD0s, HfDstarSels, HfDstarMls, JDstarIds>;
236246
using CandidatesDstarMCD = o2::soa::Join<HfDstarBases, HfDstarPars, HfDstarParD0s, HfDstarSels, HfDstarMls, HfDstarMcs, JDstarIds>;
@@ -263,6 +273,14 @@ using JetParticlesSubBplus = JMcParticleBplusSubs;
263273
using McCollisionsBplus = o2::soa::Join<HfBplusMcCollBases, JBplusMcCollisionIds>;
264274
using CandidatesBplusMCP = o2::soa::Join<HfBplusPBases, JBplusPIds>;
265275

276+
using CollisionsXicToXiPiPi = o2::soa::Join<HfXicToXiPiPiCollBases, JXicToXiPiPiCollisionIds>;
277+
using CandidatesXicToXiPiPiData = o2::soa::Join<HfXicToXiPiPiBases, HfXicToXiPiPiPars, HfXicToXiPiPiParEs, HfXicToXiPiPiSels, HfXicToXiPiPiMls, JXicToXiPiPiIds>;
278+
using CandidatesXicToXiPiPiMCD = o2::soa::Join<HfXicToXiPiPiBases, HfXicToXiPiPiPars, HfXicToXiPiPiParEs, HfXicToXiPiPiSels, HfXicToXiPiPiMls, HfXicToXiPiPiMcs, JXicToXiPiPiIds>;
279+
using JetTracksSubXicToXiPiPi = JTrackXicToXiPiPiSubs;
280+
using JetParticlesSubXicToXiPiPi = JMcParticleXicToXiPiPiSubs;
281+
using McCollisionsXicToXiPiPi = o2::soa::Join<HfXicToXiPiPiMcCollBases, JXicToXiPiPiMcCollisionIds>;
282+
using CandidatesXicToXiPiPiMCP = o2::soa::Join<HfXicToXiPiPiPBases, JXicToXiPiPiPIds>;
283+
266284
using CandidatesV0Data = o2::soa::Join<V0Cores, JV0Ids, V0SignalFlags>;
267285
using CandidatesV0MCD = o2::soa::Join<V0Cores, V0MCCores, JV0Ids, V0SignalFlags>;
268286
// using V0Daughters = DauTrackExtras;

PWGJE/DataModel/JetReducedDataHF.h

Lines changed: 85 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,8 @@ constexpr uint JMarkerBplus = 4;
3737
constexpr uint JMarkerDielectron = 5;
3838
constexpr uint JMarkerDstar = 6;
3939
constexpr uint JMarkerB0 = 7;
40+
constexpr uint JMarkerDs = 8;
41+
constexpr uint JMarkerXicToXiPiPi = 9;
4042

4143
namespace jcandidateindices
4244
{
@@ -124,6 +126,46 @@ DECLARE_SOA_TABLE(JDumDplusMlDaus, "AOD", "JDUMDPMLDAU",
124126

125127
// might have to update!!!!!!!!!!!!!!!!!!!!!!
126128

129+
namespace jdsindices
130+
{
131+
DECLARE_SOA_INDEX_COLUMN_FULL(Prong0, prong0, int, JTracks, "_0");
132+
DECLARE_SOA_INDEX_COLUMN_FULL(Prong1, prong1, int, JTracks, "_1");
133+
DECLARE_SOA_INDEX_COLUMN_FULL(Prong2, prong2, int, JTracks, "_2");
134+
} // namespace jdsindices
135+
136+
DECLARE_SOA_TABLE_STAGED(JDsCollisionIds, "JDSCOLLID",
137+
jcandidateindices::JCollisionId,
138+
o2::soa::Marker<JMarkerDs>);
139+
140+
DECLARE_SOA_TABLE_STAGED(JDsMcCollisionIds, "JDSMCCOLLID",
141+
jcandidateindices::JMcCollisionId,
142+
o2::soa::Marker<JMarkerDs>);
143+
144+
DECLARE_SOA_TABLE_STAGED(JDsIds, "JDSID",
145+
jcandidateindices::JCollisionId,
146+
jdsindices::Prong0Id,
147+
jdsindices::Prong1Id,
148+
jdsindices::Prong2Id);
149+
150+
DECLARE_SOA_TABLE_STAGED(JDsPIds, "JDSPID",
151+
jcandidateindices::JMcCollisionId,
152+
jcandidateindices::JMcParticleId,
153+
o2::soa::Marker<JMarkerDs>);
154+
155+
namespace jdummyds
156+
{
157+
158+
DECLARE_SOA_COLUMN(DummyDs, dummyDs, bool);
159+
160+
} // namespace jdummyds
161+
DECLARE_SOA_TABLE(JDumDsParDaus, "AOD", "JDUMDSPARDAU",
162+
jdummyds::DummyDs,
163+
o2::soa::Marker<1>);
164+
165+
DECLARE_SOA_TABLE(JDumDsMlDaus, "AOD", "JDUMDSMLDAU",
166+
jdummyds::DummyDs,
167+
o2::soa::Marker<2>);
168+
127169
namespace jdstarindices
128170
{
129171
DECLARE_SOA_INDEX_COLUMN_FULL(Prong0, prong0, int, JTracks, "_0");
@@ -258,6 +300,49 @@ DECLARE_SOA_TABLE_STAGED(JBplusPIds, "JBPPID",
258300
jcandidateindices::JMcParticleId,
259301
o2::soa::Marker<JMarkerBplus>);
260302

303+
namespace jxictoxipipiindices
304+
{
305+
DECLARE_SOA_INDEX_COLUMN_FULL(Prong0, prong0, int, JTracks, "_0");
306+
DECLARE_SOA_INDEX_COLUMN_FULL(Prong1, prong1, int, JTracks, "_1");
307+
DECLARE_SOA_INDEX_COLUMN_FULL(Prong2, prong2, int, JTracks, "_2");
308+
DECLARE_SOA_INDEX_COLUMN_FULL(Prong3, prong3, int, JTracks, "_3");
309+
DECLARE_SOA_INDEX_COLUMN_FULL(Prong4, prong4, int, JTracks, "_4");
310+
} // namespace jxictoxipipiindices
311+
312+
DECLARE_SOA_TABLE_STAGED(JXicToXiPiPiCollisionIds, "JXICXPPCOLLID",
313+
jcandidateindices::JCollisionId,
314+
o2::soa::Marker<JMarkerXicToXiPiPi>);
315+
316+
DECLARE_SOA_TABLE_STAGED(JXicToXiPiPiMcCollisionIds, "JXICXPPMCCOLLID",
317+
jcandidateindices::JMcCollisionId,
318+
o2::soa::Marker<JMarkerXicToXiPiPi>);
319+
320+
DECLARE_SOA_TABLE_STAGED(JXicToXiPiPiIds, "JXICXPPID",
321+
jcandidateindices::JCollisionId,
322+
jxictoxipipiindices::Prong0Id,
323+
jxictoxipipiindices::Prong1Id,
324+
jxictoxipipiindices::Prong2Id,
325+
jxictoxipipiindices::Prong3Id,
326+
jxictoxipipiindices::Prong4Id);
327+
328+
DECLARE_SOA_TABLE_STAGED(JXicToXiPiPiPIds, "JXICXPPPID",
329+
jcandidateindices::JMcCollisionId,
330+
jcandidateindices::JMcParticleId,
331+
o2::soa::Marker<JMarkerXicToXiPiPi>);
332+
333+
namespace jdummyxictoxipipi
334+
{
335+
DECLARE_SOA_COLUMN(DummyXicToXiPiPi, dummyXicToXiPiPi, bool);
336+
337+
} // namespace jdummyxictoxipipi
338+
DECLARE_SOA_TABLE(JDumXicToXiPiPiParDaus, "AOD", "JDUMXICXPPPARDAU",
339+
jdummyxictoxipipi::DummyXicToXiPiPi,
340+
o2::soa::Marker<1>);
341+
342+
DECLARE_SOA_TABLE(JDumXicToXiPiPiMlDaus, "AOD", "JDUMXICXPPMLDAU",
343+
jdummyxictoxipipi::DummyXicToXiPiPi,
344+
o2::soa::Marker<2>);
345+
261346
} // namespace o2::aod
262347

263348
#endif // PWGJE_DATAMODEL_JETREDUCEDDATAHF_H_

PWGJE/DataModel/JetSubstructure.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -260,10 +260,12 @@ DECLARE_SOA_COLUMN(JetNConstituents, jetNConstituents, int); //!
260260
JETSUBSTRUCTURE_TABLES_DEF(C, "C", Charged, charged, JTracks, CJetCOs, "CJETCO", JTrackSubs, CEWSJetCOs, "CEWSJETCO", JTracks, CMCDJetCOs, "CMCDJETCO", JMcParticles, CMCPJetCOs, "CMCPJETCO");
261261
JETSUBSTRUCTURE_TABLES_DEF(D0C, "D0C", D0Charged, d0charged, JTracks, HfD0Bases, "HFD0BASE", JTrackD0Subs, HfD0Bases, "HFD0BASE", JTracks, HfD0Bases, "HFD0BASE", JMcParticles, HfD0PBases, "HFD0PBASE");
262262
JETSUBSTRUCTURE_TABLES_DEF(DplusC, "DPC", DplusCharged, dpluscharged, JTracks, HfDplusBases, "HFDPBASE", JTrackDplusSubs, HfDplusBases, "HFDPBASE", JTracks, HfDplusBases, "HFDPBASE", JMcParticles, HfDplusPBases, "HFDPPBASE");
263+
JETSUBSTRUCTURE_TABLES_DEF(DsC, "DSC", DsCharged, dscharged, JTracks, HfDsBases, "HFDSBASE", JTrackDsSubs, HfDsBases, "HFDSBASE", JTracks, HfDsBases, "HFDSBASE", JMcParticles, HfDsPBases, "HFDSPBASE");
263264
JETSUBSTRUCTURE_TABLES_DEF(DstarC, "DSTC", DstarCharged, dstarcharged, JTracks, HfDstarBases, "HFDSTBASE", JTrackDstarSubs, HfDstarBases, "HFDSTBASE", JTracks, HfDstarBases, "HFDSTBASE", JMcParticles, HfDstarPBases, "HFDSTPBASE");
264265
JETSUBSTRUCTURE_TABLES_DEF(LcC, "LCC", LcCharged, lccharged, JTracks, HfLcBases, "HFLCBASE", JTrackLcSubs, HfLcBases, "HFLCBASE", JTracks, HfLcBases, "HFLCBASE", JMcParticles, HfLcPBases, "HFLCPBASE");
265266
JETSUBSTRUCTURE_TABLES_DEF(B0C, "B0C", B0Charged, b0charged, JTracks, HfB0Bases, "HFB0BASE", JTrackB0Subs, HfB0Bases, "HFB0BASE", JTracks, HfB0Bases, "HFB0BASE", JMcParticles, HfB0PBases, "HFB0PBASE");
266267
JETSUBSTRUCTURE_TABLES_DEF(BplusC, "BPC", BplusCharged, bpluscharged, JTracks, HfBplusBases, "HFBPBASE", JTrackBplusSubs, HfBplusBases, "HFBPBASE", JTracks, HfBplusBases, "HFBPBASE", JMcParticles, HfBplusPBases, "HFBPPBASE");
268+
JETSUBSTRUCTURE_TABLES_DEF(XicToXiPiPiC, "XICXPPC", XicToXiPiPiCharged, xictoxipipicharged, JTracks, HfXicToXiPiPiBases, "HFXICXPPBASE", JTrackXicToXiPiPiSubs, HfXicToXiPiPiBases, "HFXICXPPBASE", JTracks, HfXicToXiPiPiBases, "HFXICXPPBASE", JMcParticles, HfXicToXiPiPiPBases, "HFXICXPPPBASE");
267269
JETSUBSTRUCTURE_TABLES_DEF(DielectronC, "DIELC", DielectronCharged, dielectroncharged, JTracks, Dielectrons, "RTDIELECTRON", JTrackDielectronSubs, Dielectrons, "RTDIELECTRON", JTracks, Dielectrons, "RTDIELECTRON", JMcParticles, JDielectronMcs, "JDIELMC");
268270

269271
} // namespace o2::aod

0 commit comments

Comments
 (0)