Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[PWGHF] Add bitmap of primary-vertex-contributor prongs #9051

Open
wants to merge 7 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 4 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
48 changes: 26 additions & 22 deletions PWGHF/DataModel/CandidateReconstructionTables.h
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@

#include "PWGHF/Core/SelectorCuts.h"
#include "PWGHF/Utils/utilsPid.h"
#include "PWGHF/Utils/utilsTrkCandHf.h"
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should only be included in files that use countOnesInBinary.


namespace o2::aod
{
Expand Down Expand Up @@ -245,7 +246,7 @@
DECLARE_SOA_INDEX_COLUMN_FULL(Prong2, prong2, int, Tracks, "_2"); //! Index to third prong
DECLARE_SOA_INDEX_COLUMN(V0, v0); //! Index to V0 prong
DECLARE_SOA_INDEX_COLUMN(Cascade, cascade); //! Index to cascade prong
DECLARE_SOA_COLUMN(HFflag, hfflag, uint8_t); //!

Check warning on line 249 in PWGHF/DataModel/CandidateReconstructionTables.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(FlagD0ToKPi, flagD0ToKPi, uint8_t); //!
DECLARE_SOA_COLUMN(FlagJpsiToEE, flagJpsiToEE, uint8_t); //!
Expand Down Expand Up @@ -484,26 +485,27 @@
DECLARE_SOA_DYNAMIC_COLUMN(ImpactParameterZNormalised2, impactParameterZNormalised2, //!
[](float dca, float err) -> float { return dca / err; });
/// prong PID nsigma
DECLARE_SOA_COLUMN(NProngsContributorsPV, nProngsContributorsPV, uint8_t); //! number of prongs contributing to the primary-vertex reconstruction
DECLARE_SOA_COLUMN(NSigTpcPi0, nSigTpcPi0, float); //! TPC nSigma for pion hypothesis - prong 0
DECLARE_SOA_COLUMN(NSigTpcPi1, nSigTpcPi1, float); //! TPC nSigma for pion hypothesis - prong 1
DECLARE_SOA_COLUMN(NSigTpcPi2, nSigTpcPi2, float); //! TPC nSigma for pion hypothesis - prong 2
DECLARE_SOA_COLUMN(NSigTpcKa0, nSigTpcKa0, float); //! TPC nSigma for kaon hypothesis - prong 0
DECLARE_SOA_COLUMN(NSigTpcKa1, nSigTpcKa1, float); //! TPC nSigma for kaon hypothesis - prong 1
DECLARE_SOA_COLUMN(NSigTpcKa2, nSigTpcKa2, float); //! TPC nSigma for kaon hypothesis - prong 2
DECLARE_SOA_COLUMN(NSigTpcPr0, nSigTpcPr0, float); //! TPC nSigma for proton hypothesis - prong 0
DECLARE_SOA_COLUMN(NSigTpcPr1, nSigTpcPr1, float); //! TPC nSigma for proton hypothesis - prong 1
DECLARE_SOA_COLUMN(NSigTpcPr2, nSigTpcPr2, float); //! TPC nSigma for proton hypothesis - prong 2
DECLARE_SOA_COLUMN(NSigTofPi0, nSigTofPi0, float); //! TOF nSigma for pion hypothesis - prong 0
DECLARE_SOA_COLUMN(NSigTofPi1, nSigTofPi1, float); //! TOF nSigma for pion hypothesis - prong 1
DECLARE_SOA_COLUMN(NSigTofPi2, nSigTofPi2, float); //! TOF nSigma for pion hypothesis - prong 2
DECLARE_SOA_COLUMN(NSigTofKa0, nSigTofKa0, float); //! TOF nSigma for kaon hypothesis - prong 0
DECLARE_SOA_COLUMN(NSigTofKa1, nSigTofKa1, float); //! TOF nSigma for kaon hypothesis - prong 1
DECLARE_SOA_COLUMN(NSigTofKa2, nSigTofKa2, float); //! TOF nSigma for kaon hypothesis - prong 2
DECLARE_SOA_COLUMN(NSigTofPr0, nSigTofPr0, float); //! TOF nSigma for proton hypothesis - prong 0
DECLARE_SOA_COLUMN(NSigTofPr1, nSigTofPr1, float); //! TOF nSigma for proton hypothesis - prong 1
DECLARE_SOA_COLUMN(NSigTofPr2, nSigTofPr2, float); //! TOF nSigma for proton hypothesis - prong 2
DECLARE_SOA_DYNAMIC_COLUMN(TpcTofNSigmaPi0, tpcTofNSigmaPi0, //! Combined NSigma separation with the TPC & TOF detectors for pion - prong 0
DECLARE_SOA_COLUMN(IndicesProngsContributorsPV, indicesProngsContributorsPV, uint8_t); //! indices of prongs contributing to the primary-vertex reconstruction encoded in binary form
vkucera marked this conversation as resolved.
Show resolved Hide resolved
DECLARE_SOA_COLUMN(NSigTpcPi0, nSigTpcPi0, float); //! TPC nSigma for pion hypothesis - prong 0
DECLARE_SOA_COLUMN(NSigTpcPi1, nSigTpcPi1, float); //! TPC nSigma for pion hypothesis - prong 1
DECLARE_SOA_COLUMN(NSigTpcPi2, nSigTpcPi2, float); //! TPC nSigma for pion hypothesis - prong 2
DECLARE_SOA_COLUMN(NSigTpcKa0, nSigTpcKa0, float); //! TPC nSigma for kaon hypothesis - prong 0
DECLARE_SOA_COLUMN(NSigTpcKa1, nSigTpcKa1, float); //! TPC nSigma for kaon hypothesis - prong 1
DECLARE_SOA_COLUMN(NSigTpcKa2, nSigTpcKa2, float); //! TPC nSigma for kaon hypothesis - prong 2
DECLARE_SOA_COLUMN(NSigTpcPr0, nSigTpcPr0, float); //! TPC nSigma for proton hypothesis - prong 0
DECLARE_SOA_COLUMN(NSigTpcPr1, nSigTpcPr1, float); //! TPC nSigma for proton hypothesis - prong 1
DECLARE_SOA_COLUMN(NSigTpcPr2, nSigTpcPr2, float); //! TPC nSigma for proton hypothesis - prong 2
DECLARE_SOA_COLUMN(NSigTofPi0, nSigTofPi0, float); //! TOF nSigma for pion hypothesis - prong 0
DECLARE_SOA_COLUMN(NSigTofPi1, nSigTofPi1, float); //! TOF nSigma for pion hypothesis - prong 1
DECLARE_SOA_COLUMN(NSigTofPi2, nSigTofPi2, float); //! TOF nSigma for pion hypothesis - prong 2
DECLARE_SOA_COLUMN(NSigTofKa0, nSigTofKa0, float); //! TOF nSigma for kaon hypothesis - prong 0
DECLARE_SOA_COLUMN(NSigTofKa1, nSigTofKa1, float); //! TOF nSigma for kaon hypothesis - prong 1
DECLARE_SOA_COLUMN(NSigTofKa2, nSigTofKa2, float); //! TOF nSigma for kaon hypothesis - prong 2
DECLARE_SOA_COLUMN(NSigTofPr0, nSigTofPr0, float); //! TOF nSigma for proton hypothesis - prong 0
DECLARE_SOA_COLUMN(NSigTofPr1, nSigTofPr1, float); //! TOF nSigma for proton hypothesis - prong 1
DECLARE_SOA_COLUMN(NSigTofPr2, nSigTofPr2, float); //! TOF nSigma for proton hypothesis - prong 2
DECLARE_SOA_DYNAMIC_COLUMN(NProngsContributorsPV, nProngsContributorsPV, [](uint8_t indicesProngsContributorsPV) -> uint8_t { return hf_trkcandsel::countOnesInBinary(indicesProngsContributorsPV); });
DECLARE_SOA_DYNAMIC_COLUMN(TpcTofNSigmaPi0, tpcTofNSigmaPi0, //! Combined NSigma separation with the TPC & TOF detectors for pion - prong 0
[](float tpcNSigmaPi0, float tofNSigmaPi0) -> float { return pid_tpc_tof_utils::combineNSigma<false /*tiny*/>(tpcNSigmaPi0, tofNSigmaPi0); });
DECLARE_SOA_DYNAMIC_COLUMN(TpcTofNSigmaPi1, tpcTofNSigmaPi1, //! Combined NSigma separation with the TPC & TOF detectors for pion - prong 1
[](float tpcNSigmaPi1, float tofNSigmaPi1) -> float { return pid_tpc_tof_utils::combineNSigma<false /*tiny*/>(tpcNSigmaPi1, tofNSigmaPi1); });
Expand Down Expand Up @@ -572,9 +574,9 @@
[](float xVtxP, float yVtxP, float xVtxS, float yVtxS, float err) -> float { return RecoDecay::distanceXY(std::array{xVtxP, yVtxP}, std::array{xVtxS, yVtxS}) / err; });
DECLARE_SOA_COLUMN(ErrorDecayLength, errorDecayLength, float); //!
DECLARE_SOA_COLUMN(ErrorDecayLengthXY, errorDecayLengthXY, float); //!
DECLARE_SOA_DYNAMIC_COLUMN(CPA, cpa, //!

Check warning on line 577 in PWGHF/DataModel/CandidateReconstructionTables.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.
[](float xVtxP, float yVtxP, float zVtxP, float xVtxS, float yVtxS, float zVtxS, float px, float py, float pz) -> float { return RecoDecay::cpa(std::array{xVtxP, yVtxP, zVtxP}, std::array{xVtxS, yVtxS, zVtxS}, std::array{px, py, pz}); });
DECLARE_SOA_DYNAMIC_COLUMN(CPAXY, cpaXY, //!

Check warning on line 579 in PWGHF/DataModel/CandidateReconstructionTables.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.
[](float xVtxP, float yVtxP, float xVtxS, float yVtxS, float px, float py) -> float { return RecoDecay::cpaXY(std::array{xVtxP, yVtxP}, std::array{xVtxS, yVtxS}, std::array{px, py}); });
DECLARE_SOA_DYNAMIC_COLUMN(Ct, ct, //!
[](float xVtxP, float yVtxP, float zVtxP, float xVtxS, float yVtxS, float zVtxS, float px, float py, float pz, double m) -> float { return RecoDecay::ct(std::array{px, py, pz}, RecoDecay::distance(std::array{xVtxP, yVtxP, zVtxP}, std::array{xVtxS, yVtxS, zVtxS}), m); });
Expand Down Expand Up @@ -664,14 +666,15 @@
hf_cand::ErrorImpactParameter0, hf_cand::ErrorImpactParameter1,
hf_cand::ImpactParameterZ0, hf_cand::ImpactParameterZ1,
hf_cand::ErrorImpactParameterZ0, hf_cand::ErrorImpactParameterZ1,
hf_track_index::Prong0Id, hf_track_index::Prong1Id, hf_cand::NProngsContributorsPV,
hf_track_index::Prong0Id, hf_track_index::Prong1Id, hf_cand::IndicesProngsContributorsPV,
hf_track_index::HFflag,
/* dynamic columns */
hf_cand_2prong::M<hf_cand::PxProng0, hf_cand::PyProng0, hf_cand::PzProng0, hf_cand::PxProng1, hf_cand::PyProng1, hf_cand::PzProng1>,
hf_cand_2prong::M2<hf_cand::PxProng0, hf_cand::PyProng0, hf_cand::PzProng0, hf_cand::PxProng1, hf_cand::PyProng1, hf_cand::PzProng1>,
hf_cand_2prong::ImpactParameterProduct<hf_cand::ImpactParameter0, hf_cand::ImpactParameter1>,
hf_cand_2prong::CosThetaStar<hf_cand::PxProng0, hf_cand::PyProng0, hf_cand::PzProng0, hf_cand::PxProng1, hf_cand::PyProng1, hf_cand::PzProng1>,
hf_cand_2prong::ImpactParameterProngSqSum<hf_cand::ImpactParameter0, hf_cand::ImpactParameter1>,
hf_cand::NProngsContributorsPV<hf_cand::IndicesProngsContributorsPV>,
/* dynamic columns that use candidate momentum components */
hf_cand::Pt<hf_cand_2prong::Px, hf_cand_2prong::Py>,
hf_cand::Pt2<hf_cand_2prong::Px, hf_cand_2prong::Py>,
Expand Down Expand Up @@ -763,9 +766,9 @@
DECLARE_SOA_COLUMN(FlagMcMatchGen, flagMcMatchGen, int8_t); //! generator level
DECLARE_SOA_COLUMN(OriginMcRec, originMcRec, int8_t); //! particle origin, reconstruction level
DECLARE_SOA_COLUMN(OriginMcGen, originMcGen, int8_t); //! particle origin, generator level
DECLARE_SOA_COLUMN(V0X, v0x, float); //! X position of V0 decay

Check warning on line 769 in PWGHF/DataModel/CandidateReconstructionTables.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(V0Y, v0y, float); //! Y position of V0 decay

Check warning on line 770 in PWGHF/DataModel/CandidateReconstructionTables.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(V0Z, v0z, float); //! Z position of V0 decay

Check warning on line 771 in PWGHF/DataModel/CandidateReconstructionTables.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.
} // namespace hf_cand_casc

DECLARE_SOA_TABLE(HfCandCascBase, "AOD", "HFCANDCASCBASE", //!
Expand Down Expand Up @@ -970,12 +973,13 @@
hf_cand::ErrorImpactParameter0, hf_cand::ErrorImpactParameter1, hf_cand::ErrorImpactParameter2,
hf_cand::ImpactParameterZ0, hf_cand::ImpactParameterZ1, hf_cand::ImpactParameterZ2,
hf_cand::ErrorImpactParameterZ0, hf_cand::ErrorImpactParameterZ1, hf_cand::ErrorImpactParameterZ2,
hf_track_index::Prong0Id, hf_track_index::Prong1Id, hf_track_index::Prong2Id, hf_cand::NProngsContributorsPV,
hf_track_index::Prong0Id, hf_track_index::Prong1Id, hf_track_index::Prong2Id, hf_cand::IndicesProngsContributorsPV,
hf_track_index::HFflag,
/* dynamic columns */
hf_cand_3prong::M<hf_cand::PxProng0, hf_cand::PyProng0, hf_cand::PzProng0, hf_cand::PxProng1, hf_cand::PyProng1, hf_cand::PzProng1, hf_cand::PxProng2, hf_cand::PyProng2, hf_cand::PzProng2>,
hf_cand_3prong::M2<hf_cand::PxProng0, hf_cand::PyProng0, hf_cand::PzProng0, hf_cand::PxProng1, hf_cand::PyProng1, hf_cand::PzProng1, hf_cand::PxProng2, hf_cand::PyProng2, hf_cand::PzProng2>,
hf_cand_3prong::ImpactParameterProngSqSum<hf_cand::ImpactParameter0, hf_cand::ImpactParameter1, hf_cand::ImpactParameter2>,
hf_cand::NProngsContributorsPV<hf_cand::IndicesProngsContributorsPV>,
/* prong 2 */
hf_cand::ImpactParameterNormalised2<hf_cand::ImpactParameter2, hf_cand::ErrorImpactParameter2>,
hf_cand::PtProng2<hf_cand::PxProng2, hf_cand::PyProng2>,
Expand Down Expand Up @@ -1230,10 +1234,10 @@
DECLARE_SOA_COLUMN(CosPAXYV0, cosPAXYV0, float);
DECLARE_SOA_COLUMN(CosPAXYCharmBaryon, cosPAXYCharmBaryon, float);
DECLARE_SOA_COLUMN(CosPAXYCasc, cosPAXYCasc, float);
DECLARE_SOA_COLUMN(CTauOmegac, ctauOmegac, float);

Check warning on line 1237 in PWGHF/DataModel/CandidateReconstructionTables.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(CTauCascade, ctauCascade, float);

Check warning on line 1238 in PWGHF/DataModel/CandidateReconstructionTables.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(CTauV0, ctauV0, float);

Check warning on line 1239 in PWGHF/DataModel/CandidateReconstructionTables.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(CTauXic, ctauXic, float);

Check warning on line 1240 in PWGHF/DataModel/CandidateReconstructionTables.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(EtaV0PosDau, etaV0PosDau, float);
DECLARE_SOA_COLUMN(EtaV0NegDau, etaV0NegDau, float);
DECLARE_SOA_COLUMN(EtaBachFromCasc, etaBachFromCasc, float);
Expand Down
2 changes: 1 addition & 1 deletion PWGHF/DataModel/DerivedTables.h
Original file line number Diff line number Diff line change
Expand Up @@ -564,7 +564,7 @@ DECLARE_SOA_TABLE_STAGED(HfBplusMcs, "HFBPMC", //! Table with MC candidate info
// normalised: DecayLengthNormalised, DecayLengthXYNormalised, ImpactParameterNormalised0
DECLARE_SOA_TABLE_STAGED(HfLcPars, "HFLCPAR", //! Table with candidate properties used for selection
hf_cand::Chi2PCA,
hf_cand::NProngsContributorsPV,
hf_cand::IndicesProngsContributorsPV,
vkucera marked this conversation as resolved.
Show resolved Hide resolved
hf_cand_par::Cpa,
hf_cand_par::CpaXY,
hf_cand_par::DecayLength,
Expand Down
16 changes: 8 additions & 8 deletions PWGHF/TableProducer/candidateCreator2Prong.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -281,12 +281,12 @@ struct HfCandidateCreator2Prong {
auto errorDecayLengthXY = std::sqrt(getRotatedCovMatrixXX(covMatrixPV, phi, 0.) + getRotatedCovMatrixXX(covMatrixPCA, phi, 0.));

auto indexCollision = collision.globalIndex();
uint8_t nProngsContributorsPV = 0;
uint8_t indicesProngsContributorsPV = 0;
if (indexCollision == track0.collisionId() && track0.isPVContributor()) {
nProngsContributorsPV += 1;
SETBIT(indicesProngsContributorsPV, 0);
}
if (indexCollision == track1.collisionId() && track1.isPVContributor()) {
nProngsContributorsPV += 1;
SETBIT(indicesProngsContributorsPV, 1);
}

// fill candidate table rows
Expand All @@ -301,7 +301,7 @@ struct HfCandidateCreator2Prong {
std::sqrt(impactParameter0.getSigmaY2()), std::sqrt(impactParameter1.getSigmaY2()),
impactParameter0.getZ(), impactParameter1.getZ(),
std::sqrt(impactParameter0.getSigmaZ2()), std::sqrt(impactParameter1.getSigmaZ2()),
rowTrackIndexProng2.prong0Id(), rowTrackIndexProng2.prong1Id(), nProngsContributorsPV,
rowTrackIndexProng2.prong0Id(), rowTrackIndexProng2.prong1Id(), indicesProngsContributorsPV,
rowTrackIndexProng2.hfflag());

// fill candidate prong PID rows
Expand Down Expand Up @@ -432,12 +432,12 @@ struct HfCandidateCreator2Prong {
}

auto indexCollision = collision.globalIndex();
uint8_t nProngsContributorsPV = 0;
uint8_t indicesProngsContributorsPV = 0;
if (indexCollision == track0.collisionId() && track0.isPVContributor()) {
nProngsContributorsPV += 1;
SETBIT(indicesProngsContributorsPV, 0);
}
if (indexCollision == track1.collisionId() && track1.isPVContributor()) {
nProngsContributorsPV += 1;
SETBIT(indicesProngsContributorsPV, 1);
}

// fill candidate table rows
Expand All @@ -452,7 +452,7 @@ struct HfCandidateCreator2Prong {
errImpactParameter0XY, errImpactParameter1XY,
0.f, 0.f,
0.f, 0.f,
rowTrackIndexProng2.prong0Id(), rowTrackIndexProng2.prong1Id(), nProngsContributorsPV,
rowTrackIndexProng2.prong0Id(), rowTrackIndexProng2.prong1Id(), indicesProngsContributorsPV,
rowTrackIndexProng2.hfflag());

// fill candidate prong PID rows
Expand Down
10 changes: 5 additions & 5 deletions PWGHF/TableProducer/candidateCreator3Prong.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -275,15 +275,15 @@ struct HfCandidateCreator3Prong {
auto errorDecayLengthXY = std::sqrt(getRotatedCovMatrixXX(covMatrixPV, phi, 0.) + getRotatedCovMatrixXX(covMatrixPCA, phi, 0.));

auto indexCollision = collision.globalIndex();
uint8_t nProngsContributorsPV = 0;
uint8_t indicesProngsContributorsPV = 0;
if (indexCollision == track0.collisionId() && track0.isPVContributor()) {
nProngsContributorsPV += 1;
SETBIT(indicesProngsContributorsPV, 0);
}
if (indexCollision == track1.collisionId() && track1.isPVContributor()) {
nProngsContributorsPV += 1;
SETBIT(indicesProngsContributorsPV, 1);
}
if (indexCollision == track2.collisionId() && track2.isPVContributor()) {
nProngsContributorsPV += 1;
SETBIT(indicesProngsContributorsPV, 2);
}

// fill candidate table rows
Expand All @@ -299,7 +299,7 @@ struct HfCandidateCreator3Prong {
std::sqrt(impactParameter0.getSigmaY2()), std::sqrt(impactParameter1.getSigmaY2()), std::sqrt(impactParameter2.getSigmaY2()),
impactParameter0.getZ(), impactParameter1.getZ(), impactParameter2.getZ(),
std::sqrt(impactParameter0.getSigmaZ2()), std::sqrt(impactParameter1.getSigmaZ2()), std::sqrt(impactParameter2.getSigmaZ2()),
rowTrackIndexProng3.prong0Id(), rowTrackIndexProng3.prong1Id(), rowTrackIndexProng3.prong2Id(), nProngsContributorsPV,
rowTrackIndexProng3.prong0Id(), rowTrackIndexProng3.prong1Id(), rowTrackIndexProng3.prong2Id(), indicesProngsContributorsPV,
rowTrackIndexProng3.hfflag());

// fill histograms
Expand Down
2 changes: 1 addition & 1 deletion PWGHF/TableProducer/derivedDataCreatorLcToPKPi.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -191,7 +191,7 @@ struct HfDerivedDataCreatorLcToPKPi {
if (fillCandidatePar) {
rowCandidatePar(
candidate.chi2PCA(),
candidate.nProngsContributorsPV(),
candidate.indicesProngsContributorsPV(),
candidate.cpa(),
candidate.cpaXY(),
candidate.decayLength(),
Expand Down
12 changes: 6 additions & 6 deletions PWGHF/TableProducer/treeCreatorLcToPKPi.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,7 @@ DECLARE_SOA_TABLE(HfCandLcLites, "AOD", "HFCANDLCLITE",
collision::PosX,
collision::PosY,
collision::PosZ,
hf_cand::NProngsContributorsPV,
hf_cand::IndicesProngsContributorsPV,
// hf_cand::ErrorDecayLength,
// hf_cand::ErrorDecayLengthXY,
hf_cand::Chi2PCA,
Expand Down Expand Up @@ -158,7 +158,7 @@ DECLARE_SOA_TABLE(HfCandLcFulls, "AOD", "HFCANDLCFULL",
collision::PosX,
collision::PosY,
collision::PosZ,
hf_cand::NProngsContributorsPV,
hf_cand::IndicesProngsContributorsPV,
hf_cand::XSecondaryVertex,
hf_cand::YSecondaryVertex,
hf_cand::ZSecondaryVertex,
Expand Down Expand Up @@ -356,7 +356,7 @@ struct HfTreeCreatorLcToPKPi {
candidate.posX(),
candidate.posY(),
candidate.posZ(),
candidate.nProngsContributorsPV(),
candidate.indicesProngsContributorsPV(),
// candidate.errorDecayLength(),
// candidate.errorDecayLengthXY(),
candidate.chi2PCA(),
Expand Down Expand Up @@ -418,7 +418,7 @@ struct HfTreeCreatorLcToPKPi {
candidate.posX(),
candidate.posY(),
candidate.posZ(),
candidate.nProngsContributorsPV(),
candidate.indicesProngsContributorsPV(),
candidate.xSecondaryVertex(),
candidate.ySecondaryVertex(),
candidate.zSecondaryVertex(),
Expand Down Expand Up @@ -613,7 +613,7 @@ struct HfTreeCreatorLcToPKPi {
candidate.posX(),
candidate.posY(),
candidate.posZ(),
candidate.nProngsContributorsPV(),
candidate.indicesProngsContributorsPV(),
// candidate.errorDecayLength(),
// candidate.errorDecayLengthXY(),
candidate.chi2PCA(),
Expand Down Expand Up @@ -675,7 +675,7 @@ struct HfTreeCreatorLcToPKPi {
candidate.posX(),
candidate.posY(),
candidate.posZ(),
candidate.nProngsContributorsPV(),
candidate.indicesProngsContributorsPV(),
candidate.xSecondaryVertex(),
candidate.ySecondaryVertex(),
candidate.zSecondaryVertex(),
Expand Down
13 changes: 13 additions & 0 deletions PWGHF/Utils/utilsTrkCandHf.h
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,19 @@ void setLabelHistoCands(Histo& hCandidates)
hCandidates->GetXaxis()->SetBinLabel(SVFitting::Fail + 1, "Run-time error in secondary vertexing");
}

/// @brief Function to evaluate number of ones in a binary representation of the argument
/// \param num is the input argument
int countOnesInBinary(uint8_t num)
{
int count = 0;

for (int iBit = 0; iBit < 8; iBit++) {
count += TESTBIT(num, iBit);
}

return count;
}

} // namespace o2::hf_trkcandsel

#endif // PWGHF_UTILS_UTILSTRKCANDHF_H_
2 changes: 1 addition & 1 deletion PWGJE/Core/JetHFUtilities.h
Original file line number Diff line number Diff line change
Expand Up @@ -563,7 +563,7 @@ void fillLcCandidateTable(T const& candidate, U& LcParTable, V& LcParETable, M&

LcParTable(
candidate.chi2PCA(),
candidate.nProngsContributorsPV(),
candidate.indicesProngsContributorsPV(),
candidate.cpa(),
candidate.cpaXY(),
candidate.decayLength(),
Expand Down
Loading