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
34 changes: 34 additions & 0 deletions PWGLF/DataModel/LFOmega2012MlTables.h
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,8 @@
/// Mode A (XiK0s): Omega(2012)- -> Xi- K0S. Mode B (Xi1530K): Omega(2012)- -> Xi(1530)0 K- -> Xi- pi+ K-.
/// Only the input-object tables (events, cascades, V0s, tracks) are common; every event row belongs to one
/// decay mode (column omDecayMode), so the object rows of the two modes never mix either.
/// Event rows are written only for collisions with at least one written candidate. In reconstructed MC the
/// object MC labels and the pruned McParticles rows replace the source MC tables, which are not written.
///
/// Cumulative pass bits (each bit requires all lower bits):
/// mode A: 1 loose (valid canonical candidate inside the rapidity window), 2 Xi selection, 4 K0s selection,
Expand Down Expand Up @@ -234,6 +236,38 @@ DECLARE_SOA_TABLE(Omega2012MlGenAudit, "AOD", "OMMLGENAUDIT",
o2::soa::Index<>, omega2012ml::OmRecoCollisionId, omega2012ml::OmOriginalMcParticleId,
omega2012ml::OmPdg, omega2012ml::OmDaughterPdg1, omega2012ml::OmDaughterPdg2,
omega2012ml::OmGenChannel, omega2012ml::OmGenPt, omega2012ml::OmGenY);

// MC truth of reconstructed MC: daughter labels of the written objects and the pruned source McParticles rows
// (Omega(2012) decay trees and ancestry of the daughter labels). Source rows are DF-local scalar values.
namespace omega2012ml
{
DECLARE_SOA_INDEX_COLUMN_FULL_CUSTOM(Omega2012MlTrack, omega2012MlTrack, int, Omega2012MlTracks, "OmmlTracks", "");
DECLARE_SOA_COLUMN(OmMcCollisionRow, omMcCollisionRow, int64_t); //! row of the MC collision in the input McCollisions table
DECLARE_SOA_COLUMN(OmCascadeMcLabels, omCascadeMcLabels, int[3]); //! McParticles rows of the cascade daughters, order of omCascadeIndices; -1 if absent
DECLARE_SOA_COLUMN(OmV0McLabels, omV0McLabels, int[2]); //! McParticles rows of the V0 daughters, order of omV0Indices; -1 if absent
DECLARE_SOA_COLUMN(OmMcLabel, omMcLabel, int); //! McParticles row of the track; -1 if absent
DECLARE_SOA_COLUMN(OmMcRow, omMcRow, int64_t); //! row of the particle in the input McParticles table
DECLARE_SOA_COLUMN(OmMcSelection, omMcSelection, uint8_t); //! 1 Omega(2012) decay tree, 2 ancestry of a written daughter label
DECLARE_SOA_COLUMN(OmNMothers, omNMothers, uint8_t); //! number of mothers in the input row
DECLARE_SOA_COLUMN(OmMotherRows, omMotherRows, int[2]); //! first two McParticles mother rows; -1 if absent
DECLARE_SOA_COLUMN(OmDaughterRows, omDaughterRows, int[2]); //! McParticles daughter slice (first, last) as stored in the input row
DECLARE_SOA_COLUMN(OmE, omE, float);
DECLARE_SOA_COLUMN(OmWeight, omWeight, float);
} // namespace omega2012ml

DECLARE_SOA_TABLE(Omega2012MlEventMcs, "AOD", "OMMLEVENTMC",
o2::soa::Index<>, omega2012ml::Omega2012MlEventId, omega2012ml::OmMcCollisionRow);
DECLARE_SOA_TABLE(Omega2012MlCascadeMcs, "AOD", "OMMLCASCMC",
o2::soa::Index<>, omega2012ml::Omega2012MlCascadeId, omega2012ml::OmCascadeMcLabels);
DECLARE_SOA_TABLE(Omega2012MlV0Mcs, "AOD", "OMMLV0MC",
o2::soa::Index<>, omega2012ml::Omega2012MlV0Id, omega2012ml::OmV0McLabels);
DECLARE_SOA_TABLE(Omega2012MlTrackMcs, "AOD", "OMMLTRACKMC",
o2::soa::Index<>, omega2012ml::Omega2012MlTrackId, omega2012ml::OmMcLabel);
DECLARE_SOA_TABLE(Omega2012MlMcParticles, "AOD", "OMMLMCPART",
o2::soa::Index<>, omega2012ml::OmMcRow, omega2012ml::OmMcSelection, omega2012ml::OmPdg,
omega2012ml::OmMcCollisionRow, omega2012ml::OmNMothers, omega2012ml::OmMotherRows,
omega2012ml::OmDaughterRows, omega2012ml::OmPx, omega2012ml::OmPy, omega2012ml::OmPz,
omega2012ml::OmE, omega2012ml::OmWeight);
} // namespace o2::aod

#endif // PWGLF_DATAMODEL_LFOMEGA2012MLTABLES_H_
Loading
Loading