Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 6 additions & 6 deletions PWGJE/Core/JetCandidateUtilities.h
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright 2019-2020 CERN and copyright holders of ALICE O2.

Check warning on line 1 in PWGJE/Core/JetCandidateUtilities.h

View workflow job for this annotation

GitHub Actions / O2 linter

[name/file-cpp]

Use lowerCamelCase or UpperCamelCase for names of C++ files. See the O2 naming conventions for details.
// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders.
// All rights not expressly granted are reserved.
//
Expand Down Expand Up @@ -166,7 +166,7 @@
template <typename T>
bool isDaughterParticle(const T& particle, int globalIndex)
{
for (auto daughter : particle.template daughters_as<typename std::decay_t<T>::parent_t>()) {

Check warning on line 169 in PWGJE/Core/JetCandidateUtilities.h

View workflow job for this annotation

GitHub Actions / O2 linter

[const-ref-in-for-loop]

Use constant references for non-modified iterators in range-based for loops.
if (daughter.globalIndex() == globalIndex) {
return true;
}
Expand Down Expand Up @@ -225,11 +225,11 @@
* @param candidate candidate that is being checked
* @param table the table to be sliced
*/
template <typename T, typename U, typename V, typename M, typename N, typename O>
auto slicedPerCandidate(T const& table, U const& candidate, V const& perD0Candidate, M const& perLcCandidate, N const& perBplusCandidate, O const& perDielectronCandidate)
template <typename T, typename U, typename V, typename M, typename N, typename O, typename P>
auto slicedPerCandidate(T const& table, U const& candidate, V const& perD0Candidate, M const& perDplusCandidate, N const& perLcCandidate, O const& perBplusCandidate, P const& perDielectronCandidate)
{
if constexpr (jethfutilities::isHFCandidate<U>()) {
return jethfutilities::slicedPerHFCandidate(table, candidate, perD0Candidate, perLcCandidate, perBplusCandidate);
return jethfutilities::slicedPerHFCandidate(table, candidate, perD0Candidate, perDplusCandidate, perLcCandidate, perBplusCandidate);
} else if constexpr (jetdqutilities::isDielectronCandidate<U>()) {
return jetdqutilities::slicedPerDielectronCandidate(table, candidate, perDielectronCandidate);
} else {
Expand All @@ -243,11 +243,11 @@
* @param candidate candidate that is being checked
* @param table the table to be sliced
*/
template <typename T, typename U, typename V, typename M, typename N, typename O, typename P>
auto slicedPerCandidateCollision(T const& table, U const& candidates, V const& collision, M const& D0CollisionPerCollision, N const& LcCollisionPerCollision, O const& BplusCollisionPerCollision, P const& DielectronCollisionPerCollision)
template <typename T, typename U, typename V, typename M, typename N, typename O, typename P, typename Q>
auto slicedPerCandidateCollision(T const& table, U const& candidates, V const& collision, M const& D0CollisionPerCollision, N const& DplusCollisionPerCollision, O const& LcCollisionPerCollision, P const& BplusCollisionPerCollision, Q const& DielectronCollisionPerCollision)
{
if constexpr (jethfutilities::isHFTable<U>() || jethfutilities::isHFMcTable<U>()) {
return jethfutilities::slicedPerHFCollision(table, candidates, collision, D0CollisionPerCollision, LcCollisionPerCollision, BplusCollisionPerCollision);
return jethfutilities::slicedPerHFCollision(table, candidates, collision, D0CollisionPerCollision, DplusCollisionPerCollision, LcCollisionPerCollision, BplusCollisionPerCollision);
} else if constexpr (jetdqutilities::isDielectronTable<U>() || jetdqutilities::isDielectronMcTable<U>()) {
return jetdqutilities::slicedPerDielectronCollision(table, candidates, collision, DielectronCollisionPerCollision);
} else {
Expand Down
151 changes: 147 additions & 4 deletions PWGJE/Core/JetHFUtilities.h
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright 2019-2020 CERN and copyright holders of ALICE O2.

Check warning on line 1 in PWGJE/Core/JetHFUtilities.h

View workflow job for this annotation

GitHub Actions / O2 linter

[name/file-cpp]

Use lowerCamelCase or UpperCamelCase for names of C++ files. See the O2 naming conventions for details.
// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders.
// All rights not expressly granted are reserved.
//
Expand Down Expand Up @@ -83,6 +83,42 @@
return isD0McCandidate<typename T::iterator>() || isD0McCandidate<typename T::filtered_iterator>();
}

/**
* returns true if the candidate is from a D+ table
*/
template <typename T>
constexpr bool isDplusCandidate()
{
return std::is_same_v<std::decay_t<T>, o2::aod::CandidatesDplusData::iterator> || std::is_same_v<std::decay_t<T>, o2::aod::CandidatesDplusData::filtered_iterator> || std::is_same_v<std::decay_t<T>, o2::aod::CandidatesDplusMCD::iterator> || std::is_same_v<std::decay_t<T>, o2::aod::CandidatesDplusMCD::filtered_iterator>;
}

/**
* returns true if the particle is from a D+ MC table
*/
template <typename T>
constexpr bool isDplusMcCandidate()
{
return std::is_same_v<std::decay_t<T>, o2::aod::CandidatesDplusMCP::iterator> || std::is_same_v<std::decay_t<T>, o2::aod::CandidatesDplusMCP::filtered_iterator>;
}

/**
* returns true if the table is a D+ table
*/
template <typename T>
constexpr bool isDplusTable()
{
return isDplusCandidate<typename T::iterator>() || isDplusCandidate<typename T::filtered_iterator>();
}

/**
* returns true if the table is a D+ MC table
*/
template <typename T>
constexpr bool isDplusMcTable()
{
return isDplusMcCandidate<typename T::iterator>() || isDplusMcCandidate<typename T::filtered_iterator>();
}

/**
* returns true if the candidate is from a Lc table
*/
Expand Down Expand Up @@ -164,6 +200,8 @@
{
if constexpr (isD0Candidate<T>()) {
return true;
} else if constexpr (isDplusCandidate<T>()) {
return true;
} else if constexpr (isLcCandidate<T>()) {
return true;
} else if constexpr (isBplusCandidate<T>()) {
Expand All @@ -182,6 +220,8 @@
{
if constexpr (isD0McCandidate<T>()) {
return true;
} else if constexpr (isDplusMcCandidate<T>()) {
return true;
} else if constexpr (isLcMcCandidate<T>()) {
return true;
} else if constexpr (isBplusMcCandidate<T>()) {
Expand All @@ -199,6 +239,8 @@
{
if constexpr (isD0Candidate<typename T::iterator>() || isD0Candidate<typename T::filtered_iterator>()) {
return true;
} else if constexpr (isDplusCandidate<typename T::iterator>() || isDplusCandidate<typename T::filtered_iterator>()) {
return true;
} else if constexpr (isLcCandidate<typename T::iterator>() || isLcCandidate<typename T::filtered_iterator>()) {
return true;
} else if constexpr (isBplusCandidate<typename T::iterator>() || isBplusCandidate<typename T::filtered_iterator>()) {
Expand All @@ -216,6 +258,8 @@
{
if constexpr (isD0McCandidate<typename T::iterator>() || isD0McCandidate<typename T::filtered_iterator>()) {
return true;
} else if constexpr (isDplusMcCandidate<typename T::iterator>() || isDplusMcCandidate<typename T::filtered_iterator>()) {
return true;
} else if constexpr (isLcMcCandidate<typename T::iterator>() || isLcMcCandidate<typename T::filtered_iterator>()) {
return true;
} else if constexpr (isBplusMcCandidate<typename T::iterator>() || isBplusMcCandidate<typename T::filtered_iterator>()) {
Expand All @@ -238,6 +282,12 @@
} else {
return false;
}
} else if constexpr (isDplusCandidate<T>()) {
if (std::abs(candidate.flagMcMatchRec()) == 1 << o2::aod::hf_cand_3prong::DecayType::DplusToPiKPi) {
return true;
} else {
return false;
}
} else if constexpr (isLcCandidate<T>()) {
if (std::abs(candidate.flagMcMatchRec()) == 1 << o2::aod::hf_cand_3prong::DecayType::LcToPKPi) {
return true;
Expand All @@ -256,6 +306,12 @@
} else {
return false;
}
} else if constexpr (isDplusMcCandidate<T>()) {
if (std::abs(candidate.flagMcMatchGen()) == 1 << o2::aod::hf_cand_3prong::DecayType::DplusToPiKPi) {
return true;
} else {
return false;
}
} else if constexpr (isLcMcCandidate<T>()) {
if (std::abs(candidate.flagMcMatchGen()) == 1 << o2::aod::hf_cand_3prong::DecayType::LcToPKPi) {
return true;
Expand Down Expand Up @@ -289,6 +345,12 @@
} else {
return false;
}
} else if constexpr (isDplusCandidate<U>()) {
if (candidate.prong0Id() == track.globalIndex() || candidate.prong1Id() == track.globalIndex() || candidate.prong2Id() == track.globalIndex()) {
return true;
} else {
return false;
}
} else if constexpr (isLcCandidate<U>()) {
if (candidate.prong0Id() == track.globalIndex() || candidate.prong1Id() == track.globalIndex() || candidate.prong2Id() == track.globalIndex()) {
return true;
Expand Down Expand Up @@ -340,11 +402,13 @@
* @param candidate HF candidate that is being checked
* @param table the table to be sliced
*/
template <typename T, typename U, typename V, typename M, typename N>
auto slicedPerHFCandidate(T const& table, U const& candidate, V const& perD0Candidate, M const& perLcCandidate, N const& perBplusCandidate)
template <typename T, typename U, typename V, typename M, typename N, typename O>
auto slicedPerHFCandidate(T const& table, U const& candidate, V const& perD0Candidate, M const& perDplusCandidate, N const& perLcCandidate, O const& perBplusCandidate)
{
if constexpr (isD0Candidate<U>()) {
return table.sliceBy(perD0Candidate, candidate.globalIndex());
} else if constexpr (isDplusCandidate<U>()) {
return table.sliceBy(perDplusCandidate, candidate.globalIndex());
} else if constexpr (isLcCandidate<U>()) {
return table.sliceBy(perLcCandidate, candidate.globalIndex());
} else if constexpr (isBplusCandidate<U>()) {
Expand All @@ -360,11 +424,13 @@
* @param candidate HF candidate that is being checked
* @param table the table to be sliced
*/
template <typename T, typename U, typename V, typename M, typename N, typename O>
auto slicedPerHFCollision(T const& table, U const& /*candidates*/, V const& collision, M const& D0CollisionPerCollision, N const& LcCollisionPerCollision, O const& BplusCollisionPerCollision)
template <typename T, typename U, typename V, typename M, typename N, typename O, typename P>
auto slicedPerHFCollision(T const& table, U const& /*candidates*/, V const& collision, M const& D0CollisionPerCollision, N const& DplusCollisionPerCollision, O const& LcCollisionPerCollision, P const& BplusCollisionPerCollision)
{
if constexpr (isD0Table<U>() || isD0McTable<U>()) {
return table.sliceBy(D0CollisionPerCollision, collision.globalIndex());
} else if constexpr (isDplusTable<U>() || isDplusMcTable<U>()) {
return table.sliceBy(DplusCollisionPerCollision, collision.globalIndex());
} else if constexpr (isLcTable<U>() || isLcMcTable<U>()) {
return table.sliceBy(LcCollisionPerCollision, collision.globalIndex());
} else if constexpr (isBplusTable<U>() || isBplusMcTable<U>()) {
Expand Down Expand Up @@ -406,6 +472,8 @@
{
if constexpr (isD0Candidate<T>() || isD0McCandidate<T>()) {
return static_cast<int>(o2::constants::physics::Pdg::kD0);
} else if constexpr (isDplusCandidate<T>() || isDplusMcCandidate<T>()) {
return static_cast<int>(o2::constants::physics::Pdg::kDPlus);
} else if constexpr (isLcCandidate<T>() || isLcMcCandidate<T>()) {
return static_cast<int>(o2::constants::physics::Pdg::kLambdaCPlus);
} else if constexpr (isBplusCandidate<T>() || isBplusMcCandidate<T>()) {
Expand All @@ -423,6 +491,8 @@
{
if constexpr (isD0Table<T>() || isD0McTable<T>()) {
return static_cast<int>(o2::constants::physics::Pdg::kD0);
} else if constexpr (isDplusTable<T>() || isDplusMcTable<T>()) {
return static_cast<int>(o2::constants::physics::Pdg::kDPlus);
} else if constexpr (isLcTable<T>() || isLcMcTable<T>()) {
return static_cast<int>(o2::constants::physics::Pdg::kLambdaCPlus);
} else if constexpr (isBplusTable<T>() || isBplusMcTable<T>()) {
Expand All @@ -442,6 +512,8 @@
{
if constexpr (isD0Candidate<T>() || isD0McCandidate<T>()) {
return static_cast<float>(o2::constants::physics::MassD0);
} else if constexpr (isDplusCandidate<T>() || isDplusMcCandidate<T>()) {
return static_cast<float>(o2::constants::physics::MassDPlus);
} else if constexpr (isLcCandidate<T>() || isLcMcCandidate<T>()) {
return static_cast<float>(o2::constants::physics::MassLambdaCPlus);
} else if constexpr (isBplusCandidate<T>() || isBplusMcCandidate<T>()) {
Expand All @@ -460,6 +532,8 @@
{
if constexpr (isD0Table<T>() || isD0McTable<T>()) {
return static_cast<float>(o2::constants::physics::MassD0);
} else if constexpr (isDplusTable<T>() || isDplusMcTable<T>()) {
return static_cast<float>(o2::constants::physics::MassDPlus);
} else if constexpr (isLcTable<T>() || isLcMcTable<T>()) {
return static_cast<float>(o2::constants::physics::MassLambdaCPlus);
} else if constexpr (isBplusTable<T>() || isBplusMcTable<T>()) {
Expand Down Expand Up @@ -555,6 +629,72 @@
}
}

template <bool isMc, typename T, typename U, typename V, typename M, typename N>
void fillDplusCandidateTable(T const& candidate, U& DplusParTable, V& DplusParETable, M& DplusMlTable, N& DplusMCDTable)
{

DplusParTable(
candidate.chi2PCA(),
candidate.nProngsContributorsPV(),
candidate.cpa(),
candidate.cpaXY(),
candidate.decayLength(),
candidate.decayLengthXY(),
candidate.decayLengthNormalised(),
candidate.decayLengthXYNormalised(),
candidate.ptProng0(),
candidate.ptProng1(),
candidate.ptProng2(),
candidate.impactParameter0(),
candidate.impactParameter1(),
candidate.impactParameter2(),
candidate.impactParameterNormalised0(),
candidate.impactParameterNormalised1(),
candidate.impactParameterNormalised2(),
candidate.nSigTpcPi0(),
candidate.nSigTofPi0(),
candidate.nSigTpcTofPi0(),
candidate.nSigTpcKa1(),
candidate.nSigTofKa1(),
candidate.nSigTpcTofKa1(),
candidate.nSigTpcPi2(),
candidate.nSigTofPi2(),
candidate.nSigTpcTofPi2());

DplusParETable(
candidate.xSecondaryVertex(),
candidate.ySecondaryVertex(),
candidate.zSecondaryVertex(),
candidate.errorDecayLength(),
candidate.errorDecayLengthXY(),
candidate.rSecondaryVertex(),
candidate.pProng0(),
candidate.pProng1(),
candidate.pProng2(),
candidate.pxProng0(),
candidate.pyProng0(),
candidate.pzProng0(),
candidate.pxProng1(),
candidate.pyProng1(),
candidate.pzProng1(),
candidate.pxProng2(),
candidate.pyProng2(),
candidate.pzProng2(),
candidate.errorImpactParameter0(),
candidate.errorImpactParameter1(),
candidate.errorImpactParameter2(),
candidate.ct());

std::vector<float> mlScoresVector;
auto mlScoresSpan = candidate.mlScores();
std::copy(mlScoresSpan.begin(), mlScoresSpan.end(), std::back_inserter(mlScoresVector));
DplusMlTable(mlScoresVector);

if constexpr (isMc) {
DplusMCDTable(candidate.flagMcMatchRec(), candidate.originMcRec(), candidate.isCandidateSwapped());
}
}

template <bool isMc, typename T, typename U, typename V, typename M, typename N>
void fillLcCandidateTable(T const& candidate, U& LcParTable, V& LcParETable, M& LcMlTable, N& LcMCDTable)
{
Expand Down Expand Up @@ -712,6 +852,9 @@
if constexpr (isD0Candidate<T>()) {
fillD0CandidateTable<isMc>(candidate, HFParTable, HFParETable, HFMlTable, HFMCDTable);
}
if constexpr (isDplusCandidate<T>()) {
fillDplusCandidateTable<isMc>(candidate, HFParTable, HFParETable, HFMlTable, HFMCDTable);
}
if constexpr (isLcCandidate<T>()) {
fillLcCandidateTable<isMc>(candidate, HFParTable, HFParETable, HFMlTable, HFMCDTable);
}
Expand Down
9 changes: 9 additions & 0 deletions PWGJE/DataModel/Jet.h
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright 2019-2020 CERN and copyright holders of ALICE O2.

Check warning on line 1 in PWGJE/DataModel/Jet.h

View workflow job for this annotation

GitHub Actions / O2 linter

[doc/file]

Provide mandatory file documentation.
// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders.
// All rights not expressly granted are reserved.
//
Expand All @@ -18,7 +18,7 @@
///
/// \author Nima Zardoshti <nima.zardoshti@cern.ch>
/// \author Jochen Klein <jochen.klein@cern.ch>
/// \author Raymond Ehlers <raymond.ehlers@cern.ch>, ORNL

Check warning on line 21 in PWGJE/DataModel/Jet.h

View workflow job for this annotation

GitHub Actions / O2 linter

[doc/file]

Documentation for \file is missing, incorrect or misplaced.

#ifndef PWGJE_DATAMODEL_JET_H_
#define PWGJE_DATAMODEL_JET_H_
Expand All @@ -42,8 +42,8 @@

namespace jet
{
DECLARE_SOA_INDEX_COLUMN(JCollision, collision);

Check warning on line 45 in PWGJE/DataModel/Jet.h

View workflow job for this annotation

GitHub Actions / O2 linter

[name/o2-column]

Use UpperCamelCase for names of O2 columns and matching lowerCamelCase names for their getters.
DECLARE_SOA_INDEX_COLUMN(JMcCollision, mcCollision);

Check warning on line 46 in PWGJE/DataModel/Jet.h

View workflow job for this annotation

GitHub Actions / O2 linter

[name/o2-column]

Use UpperCamelCase for names of O2 columns and matching lowerCamelCase names for their getters.
DECLARE_SOA_COLUMN(Pt, pt, float); //!
DECLARE_SOA_COLUMN(Eta, eta, float); //!
DECLARE_SOA_COLUMN(Phi, phi, float); //!
Expand All @@ -66,7 +66,7 @@
#define DECLARE_JET_TABLE(_collision_name_, _jet_type_, _name_, _description_) \
namespace _name_##util \
{ \
DECLARE_SOA_DYNAMIC_COLUMN(Dummy##_jet_type_##s, dummy##_jet_type##s, \

Check warning on line 69 in PWGJE/DataModel/Jet.h

View workflow job for this annotation

GitHub Actions / O2 linter

[name/o2-column]

Use UpperCamelCase for names of O2 columns and matching lowerCamelCase names for their getters.
[]() -> int { return 0; }); \
} \
DECLARE_SOA_TABLE(_jet_type_##s, "AOD", _description_, \
Expand Down Expand Up @@ -103,7 +103,7 @@
{ \
DECLARE_SOA_INDEX_COLUMN(_jet_type_, jet); \
DECLARE_SOA_ARRAY_INDEX_COLUMN(_track_type_, tracks); \
DECLARE_SOA_ARRAY_INDEX_COLUMN(JCluster, clusters); \

Check warning on line 106 in PWGJE/DataModel/Jet.h

View workflow job for this annotation

GitHub Actions / O2 linter

[name/o2-column]

Use UpperCamelCase for names of O2 columns and matching lowerCamelCase names for their getters.
DECLARE_SOA_ARRAY_INDEX_COLUMN_FULL(Candidates, candidates, int32_t, _cand_type_, "_cand"); \
} \
DECLARE_SOA_TABLE(_jet_type_##Constituents, "AOD", _Description_ "C", \
Expand All @@ -122,7 +122,7 @@
#define DECLARE_JETMATCHING_TABLE(_jet_type_base_, _jet_type_tag_, _description_) \
namespace _jet_type_base_##jetsmatchedto##_jet_type_tag_ \
{ \
DECLARE_SOA_DYNAMIC_COLUMN(Dummy##_jet_type_base_##s, dummy##_jet_type_base_##s, \

Check warning on line 125 in PWGJE/DataModel/Jet.h

View workflow job for this annotation

GitHub Actions / O2 linter

[name/o2-column]

Use UpperCamelCase for names of O2 columns and matching lowerCamelCase names for their getters.
[]() -> int { return 0; }); \
} \
DECLARE_SOA_TABLE(_jet_type_base_##JetsMatchedTo##_jet_type_tag_##Jets, "AOD", _description_, \
Expand Down Expand Up @@ -179,6 +179,7 @@
DECLARE_JET_TABLES_LEVELS(Full, JTrackSub, HfD0Bases, HfD0PBases, "F");
DECLARE_JET_TABLES_LEVELS(Neutral, JTrackSub, HfD0Bases, HfD0PBases, "N");
DECLARE_JET_TABLES_LEVELS(D0Charged, JTrackD0Sub, HfD0Bases, HfD0PBases, "D0");
DECLARE_JET_TABLES_LEVELS(DplusCharged, JTrackDplusSub, HfDplusBases, HfDplusPBases, "DP");
DECLARE_JET_TABLES_LEVELS(LcCharged, JTrackLcSub, HfLcBases, HfLcPBases, "Lc");
DECLARE_JET_TABLES_LEVELS(BplusCharged, JTrackBplusSub, HfBplusBases, HfBplusPBases, "BP");
DECLARE_JET_TABLES_LEVELS(V0Charged, JTrackSub, V0Cores, JV0Mcs, "V0");
Expand Down Expand Up @@ -219,6 +220,14 @@
using McCollisionsD0 = o2::soa::Join<HfD0McCollBases, JD0McCollisionIds>;
using CandidatesD0MCP = o2::soa::Join<HfD0PBases, JD0PIds>;

using CollisionsDplus = o2::soa::Join<HfDplusCollBases, JDplusCollisionIds>;
using CandidatesDplusData = o2::soa::Join<HfDplusBases, HfDplusPars, HfDplusParEs, HfDplusSels, HfDplusMls, JDplusIds>;
using CandidatesDplusMCD = o2::soa::Join<HfDplusBases, HfDplusPars, HfDplusParEs, HfDplusSels, HfDplusMls, HfDplusMcs, JDplusIds>;
using JetTracksSubDplus = JTrackDplusSubs;
using JetParticlesSubDplus = JMcParticleDplusSubs;
using McCollisionsDplus = o2::soa::Join<HfDplusMcCollBases, JDplusMcCollisionIds>;
using CandidatesDplusMCP = o2::soa::Join<HfDplusPBases, JDplusPIds>;

using CollisionsLc = o2::soa::Join<HfLcCollBases, JLcCollisionIds>;
using CandidatesLcData = o2::soa::Join<HfLcBases, HfLcPars, HfLcParEs, HfLcSels, HfLcMls, JLcIds>;
using CandidatesLcMCD = o2::soa::Join<HfLcBases, HfLcPars, HfLcParEs, HfLcSels, HfLcMls, HfLcMcs, JLcIds>;
Expand Down
40 changes: 40 additions & 0 deletions PWGJE/DataModel/JetReducedDataHF.h
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,46 @@ DECLARE_SOA_TABLE(JDumD0MlDaus, "AOD", "JDumD0MLDAU",
jdummyd0::DummyD0,
o2::soa::Marker<2>);

namespace jdplusindices
{
DECLARE_SOA_INDEX_COLUMN(JCollision, collision);
DECLARE_SOA_INDEX_COLUMN_FULL(Prong0, prong0, int, JTracks, "_0");
DECLARE_SOA_INDEX_COLUMN_FULL(Prong1, prong1, int, JTracks, "_1");
DECLARE_SOA_INDEX_COLUMN_FULL(Prong2, prong2, int, JTracks, "_2");
DECLARE_SOA_INDEX_COLUMN(JMcCollision, mcCollision);
DECLARE_SOA_INDEX_COLUMN(JMcParticle, mcParticle);
} // namespace jdplusindices

DECLARE_SOA_TABLE_STAGED(JDplusCollisionIds, "JDPCOLLID",
jdplusindices::JCollisionId);

DECLARE_SOA_TABLE_STAGED(JDplusMcCollisionIds, "JDPMCCOLLID",
jdplusindices::JMcCollisionId);

DECLARE_SOA_TABLE_STAGED(JDplusIds, "JDPID",
jdplusindices::JCollisionId,
jdplusindices::Prong0Id,
jdplusindices::Prong1Id,
jdplusindices::Prong2Id);

DECLARE_SOA_TABLE_STAGED(JDplusPIds, "JDPPID",
jdplusindices::JMcCollisionId,
jdplusindices::JMcParticleId);

namespace jdummydplus
{

DECLARE_SOA_COLUMN(DummyDplus, dummyDplus, bool);

} // namespace jdummydplus
DECLARE_SOA_TABLE(JDumDplusParDaus, "AOD", "JDUMDPPARDAU",
jdummydplus::DummyDplus,
o2::soa::Marker<1>);

DECLARE_SOA_TABLE(JDumDplusMlDaus, "AOD", "JDUMDPMLDAU",
jdummydplus::DummyDplus,
o2::soa::Marker<2>);

namespace jlcindices
{
DECLARE_SOA_INDEX_COLUMN(JCollision, collision);
Expand Down
3 changes: 2 additions & 1 deletion PWGJE/DataModel/JetSubstructure.h
Original file line number Diff line number Diff line change
Expand Up @@ -122,7 +122,8 @@ DECLARE_SOA_COLUMN(JetNConstituents, jetNConstituents, int); //!

JETSUBSTRUCTURE_TABLES_DEF(C, "C", CJetCOs, "CJETCO", CEWSJetCOs, "CEWSJETCO", CMCDJetCOs, "CMCDJETCO", CMCPJetCOs, "CMCPJETCO");
JETSUBSTRUCTURE_TABLES_DEF(D0C, "D0C", HfD0Bases, "HFD0BASE", HfD0Bases, "HFD0BASE", HfD0Bases, "HFD0BASE", HfD0PBases, "HFD0PBASE");
JETSUBSTRUCTURE_TABLES_DEF(LcC, "LCC", HfLcBases, "HFLcBASE", HfLcBases, "HFLcBASE", HfLcBases, "HFLcBASE", HfLcPBases, "HFLcPBASE");
JETSUBSTRUCTURE_TABLES_DEF(DplusC, "DPC", HfDplusBases, "HFDPBASE", HfDplusBases, "HFDPBASE", HfDplusBases, "HFDPBASE", HfDplusPBases, "HFDPPBASE");
JETSUBSTRUCTURE_TABLES_DEF(LcC, "LCC", HfLcBases, "HFLCBASE", HfLcBases, "HFLCBASE", HfLcBases, "HFLCBASE", HfLcPBases, "HFLCPBASE");
JETSUBSTRUCTURE_TABLES_DEF(BplusC, "BPC", HfBplusBases, "HFBPBASE", HfBplusBases, "HFBPBASE", HfBplusBases, "HFBPBASE", HfBplusPBases, "HFBPPBASE");
JETSUBSTRUCTURE_TABLES_DEF(DielectronC, "DIELC", Dielectrons, "RTDIELECTRON", Dielectrons, "RTDIELECTRON", Dielectrons, "RTDIELECTRON", JDielectronMcs, "JDIELMC");

Expand Down
Loading
Loading