|
| 1 | +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. |
| 2 | +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. |
| 3 | +// All rights not expressly granted are reserved. |
| 4 | +// |
| 5 | +// This software is distributed under the terms of the GNU General Public |
| 6 | +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". |
| 7 | +// |
| 8 | +// In applying this license CERN does not waive the privileges and immunities |
| 9 | +// granted to it by virtue of its status as an Intergovernmental Organization |
| 10 | +// or submit itself to any jurisdiction. |
| 11 | +// |
| 12 | +/// \file LFHyperNucleiKinkTables.h |
| 13 | +/// \brief Slim hypernuclei kink tables |
| 14 | +/// \author Yuanzhe Wang <yuanzhe.wang@cern.ch> |
| 15 | + |
| 16 | +#include "Framework/ASoAHelpers.h" |
| 17 | +#include "Framework/AnalysisDataModel.h" |
| 18 | + |
| 19 | +#ifndef PWGLF_DATAMODEL_LFHYPERNUCLEIKINKTABLES_H_ |
| 20 | +#define PWGLF_DATAMODEL_LFHYPERNUCLEIKINKTABLES_H_ |
| 21 | + |
| 22 | +namespace o2::aod |
| 23 | +{ |
| 24 | + |
| 25 | +namespace hyperkink |
| 26 | +{ |
| 27 | +DECLARE_SOA_COLUMN(XPV, xPV, float); //! Primary vertex of the candidate (x direction) |
| 28 | +DECLARE_SOA_COLUMN(YPV, yPV, float); //! Primary vertex of the candidate (y direction) |
| 29 | +DECLARE_SOA_COLUMN(ZPV, zPV, float); //! Primary vertex of the candidate (z direction) |
| 30 | +DECLARE_SOA_COLUMN(XSV, xSV, float); //! Decay vertex of the candidate (x direction) |
| 31 | +DECLARE_SOA_COLUMN(YSV, ySV, float); //! Decay vertex of the candidate (y direction) |
| 32 | +DECLARE_SOA_COLUMN(ZSV, zSV, float); //! Decay vertex of the candidate (z direction) |
| 33 | +DECLARE_SOA_COLUMN(XMothIU, xMothIU, float); //! X of the mother track at the radii of ITS layer which has the outermost update |
| 34 | +DECLARE_SOA_COLUMN(YMothIU, yMothIU, float); //! Y of the mother track at the radii of ITS layer which has the outermost update |
| 35 | +DECLARE_SOA_COLUMN(ZMothIU, zMothIU, float); //! Z of the mother track at the radii of ITS layer which has the outermost update |
| 36 | +DECLARE_SOA_COLUMN(PxMothSV, pxMothSV, float); //! Px of the mother track at the decay vertex |
| 37 | +DECLARE_SOA_COLUMN(PyMothSV, pyMothSV, float); //! Py of the mother track at the decay vertex |
| 38 | +DECLARE_SOA_COLUMN(PzMothSV, pzMothSV, float); //! Pz of the mother track at the decay vertex |
| 39 | +DECLARE_SOA_COLUMN(RefitPxMothPV, refitPxMothPV, float); //! Refit Px of the mother track at the primary vertex |
| 40 | +DECLARE_SOA_COLUMN(RefitPyMothPV, refitPyMothPV, float); //! Refit Py of the mother track at the primary vertex |
| 41 | +DECLARE_SOA_COLUMN(RefitPzMothPV, refitPzMothPV, float); //! Refit Pz of the mother track at the primary vertex |
| 42 | +DECLARE_SOA_COLUMN(RefitPxMothSV, refitPxMothSV, float); //! Refit Px of the mother track at the decay vertex |
| 43 | +DECLARE_SOA_COLUMN(RefitPyMothSV, refitPyMothSV, float); //! Refit Py of the mother track at the decay vertex |
| 44 | +DECLARE_SOA_COLUMN(RefitPzMothSV, refitPzMothSV, float); //! Refit Pz of the mother track at the decay vertex |
| 45 | +DECLARE_SOA_COLUMN(PxDaugSV, pxDaugSV, float); //! Px of the daughter track at the decay vertex |
| 46 | +DECLARE_SOA_COLUMN(PyDaugSV, pyDaugSV, float); //! Py of the daughter track at the decay vertex |
| 47 | +DECLARE_SOA_COLUMN(PzDaugSV, pzDaugSV, float); //! Pz of the daughter track at the decay vertex |
| 48 | +DECLARE_SOA_COLUMN(IsMatter, isMatter, bool); //! bool: true for matter |
| 49 | +DECLARE_SOA_COLUMN(DcaMothPv, dcaMothPv, float); //! DCA of the mother to the primary vertex |
| 50 | +DECLARE_SOA_COLUMN(DcaDaugPv, dcaDaugPv, float); //! DCA of the daughter kink to the primary vertex |
| 51 | +DECLARE_SOA_COLUMN(DcaKinkTopo, dcaKinkTopo, float); //! DCA of the kink topology |
| 52 | +DECLARE_SOA_COLUMN(ItsChi2Moth, itsChi2Moth, float); //! ITS chi2 of the mother track |
| 53 | +DECLARE_SOA_COLUMN(ItsClusterSizesMoth, itsClusterSizesMoth, uint32_t); //! ITS cluster size of the mother track |
| 54 | +DECLARE_SOA_COLUMN(ItsClusterSizesDaug, itsClusterSizesDaug, uint32_t); //! ITS cluster size of the daughter track |
| 55 | +DECLARE_SOA_COLUMN(NSigmaTPCDaug, nSigmaTPCDaug, float); //! Number of tpc sigmas of the daughter track |
| 56 | +DECLARE_SOA_COLUMN(NSigmaITSDaug, nSigmaITSDaug, float); //! Number of ITS sigmas of the daughter track |
| 57 | + |
| 58 | +DECLARE_SOA_COLUMN(IsSignal, isSignal, bool); //! bool: true for hyperhelium4signal |
| 59 | +DECLARE_SOA_COLUMN(IsSignalReco, isSignalReco, bool); //! bool: true if the signal is reconstructed |
| 60 | +DECLARE_SOA_COLUMN(IsCollReco, isCollReco, bool); //! bool: true if the collision is reconstructed |
| 61 | +DECLARE_SOA_COLUMN(IsSurvEvSelection, isSurvEvSelection, bool); //! bool: true for the collision passed the event selection |
| 62 | +DECLARE_SOA_COLUMN(TrueXSV, trueXSV, float); //! true x decay vertex |
| 63 | +DECLARE_SOA_COLUMN(TrueYSV, trueYSV, float); //! true y decay vertex |
| 64 | +DECLARE_SOA_COLUMN(TrueZSV, trueZSV, float); //! true z decay vertex |
| 65 | +DECLARE_SOA_COLUMN(TruePxMothPV, truePxMothPV, float); //! Generated px of the mother track |
| 66 | +DECLARE_SOA_COLUMN(TruePyMothPV, truePyMothPV, float); //! Generated py of the mother track |
| 67 | +DECLARE_SOA_COLUMN(TruePzMothPV, truePzMothPV, float); //! Generated pz of the mother track |
| 68 | +DECLARE_SOA_COLUMN(TruePxMothSV, truePxMothSV, float); //! true px of the mother track at the decay vertex |
| 69 | +DECLARE_SOA_COLUMN(TruePyMothSV, truePyMothSV, float); //! true py of the mother track at the decay vertex |
| 70 | +DECLARE_SOA_COLUMN(TruePzMothSV, truePzMothSV, float); //! true pz of the mother track at the decay vertex |
| 71 | +DECLARE_SOA_COLUMN(TruePxDaugSV, truePxDaugSV, float); //! true px of the daughter track at the decay vertex |
| 72 | +DECLARE_SOA_COLUMN(TruePyDaugSV, truePyDaugSV, float); //! true py of the daughter track at the decay vertex |
| 73 | +DECLARE_SOA_COLUMN(TruePzDaugSV, truePzDaugSV, float); //! true pz of the daughter track at the decay vertex |
| 74 | +DECLARE_SOA_COLUMN(IsMothReco, isMothReco, bool); //! bool: true if the mother track is reconstructed |
| 75 | +DECLARE_SOA_COLUMN(PxMothPV, pxMothPV, float); //! reconstructed px of the mother track at the primary vertex |
| 76 | +DECLARE_SOA_COLUMN(PyMothPV, pyMothPV, float); //! reconstructed py of the mother track at the primary vertex |
| 77 | +DECLARE_SOA_COLUMN(PzMothPV, pzMothPV, float); //! reconstructed pz of the mother track at the primary vertex |
| 78 | +DECLARE_SOA_COLUMN(UpdatePxMothPV, updatePxMothPV, float); //! updated px of the mother track at the primary vertex after update using PV |
| 79 | +DECLARE_SOA_COLUMN(UpdatePyMothPV, updatePyMothPV, float); //! updated py of the mother track at the primary vertex after update using PV |
| 80 | +DECLARE_SOA_COLUMN(UpdatePzMothPV, updatePzMothPV, float); //! updated pz of the mother track at the primary vertex after update using PV |
| 81 | +} // namespace hyperkink |
| 82 | + |
| 83 | +DECLARE_SOA_TABLE(HypKinkCand, "AOD", "HYPKINKCANDS", |
| 84 | + o2::soa::Index<>, |
| 85 | + hyperkink::XPV, hyperkink::YPV, hyperkink::ZPV, |
| 86 | + hyperkink::XSV, hyperkink::YSV, hyperkink::ZSV, |
| 87 | + hyperkink::IsMatter, |
| 88 | + hyperkink::XMothIU, hyperkink::YMothIU, hyperkink::ZMothIU, |
| 89 | + hyperkink::PxMothSV, hyperkink::PyMothSV, hyperkink::PzMothSV, |
| 90 | + hyperkink::RefitPxMothPV, hyperkink::RefitPyMothPV, hyperkink::RefitPzMothPV, |
| 91 | + hyperkink::RefitPxMothSV, hyperkink::RefitPyMothSV, hyperkink::RefitPzMothSV, |
| 92 | + hyperkink::PxDaugSV, hyperkink::PyDaugSV, hyperkink::PzDaugSV, |
| 93 | + hyperkink::DcaMothPv, hyperkink::DcaDaugPv, hyperkink::DcaKinkTopo, |
| 94 | + hyperkink::ItsChi2Moth, hyperkink::ItsClusterSizesMoth, hyperkink::ItsClusterSizesDaug, |
| 95 | + hyperkink::NSigmaTPCDaug, hyperkink::NSigmaITSDaug); |
| 96 | + |
| 97 | +DECLARE_SOA_TABLE(MCHypKinkCand, "AOD", "MCHYPKINKCANDS", |
| 98 | + o2::soa::Index<>, |
| 99 | + hyperkink::XPV, hyperkink::YPV, hyperkink::ZPV, |
| 100 | + hyperkink::XSV, hyperkink::YSV, hyperkink::ZSV, |
| 101 | + hyperkink::IsMatter, |
| 102 | + hyperkink::XMothIU, hyperkink::YMothIU, hyperkink::ZMothIU, |
| 103 | + hyperkink::PxMothSV, hyperkink::PyMothSV, hyperkink::PzMothSV, |
| 104 | + hyperkink::RefitPxMothPV, hyperkink::RefitPyMothPV, hyperkink::RefitPzMothPV, |
| 105 | + hyperkink::RefitPxMothSV, hyperkink::RefitPyMothSV, hyperkink::RefitPzMothSV, |
| 106 | + hyperkink::PxDaugSV, hyperkink::PyDaugSV, hyperkink::PzDaugSV, |
| 107 | + hyperkink::DcaMothPv, hyperkink::DcaDaugPv, hyperkink::DcaKinkTopo, |
| 108 | + hyperkink::ItsChi2Moth, hyperkink::ItsClusterSizesMoth, hyperkink::ItsClusterSizesDaug, |
| 109 | + hyperkink::NSigmaTPCDaug, hyperkink::NSigmaITSDaug, |
| 110 | + hyperkink::IsSignal, hyperkink::IsSignalReco, hyperkink::IsCollReco, hyperkink::IsSurvEvSelection, |
| 111 | + hyperkink::TrueXSV, hyperkink::TrueYSV, hyperkink::TrueZSV, |
| 112 | + hyperkink::TruePxMothPV, hyperkink::TruePyMothPV, hyperkink::TruePzMothPV, |
| 113 | + hyperkink::TruePxMothSV, hyperkink::TruePyMothSV, hyperkink::TruePzMothSV, |
| 114 | + hyperkink::TruePxDaugSV, hyperkink::TruePyDaugSV, hyperkink::TruePzDaugSV, |
| 115 | + hyperkink::IsMothReco, hyperkink::PxMothPV, hyperkink::PyMothPV, hyperkink::PzMothPV, |
| 116 | + hyperkink::UpdatePxMothPV, hyperkink::UpdatePyMothPV, hyperkink::UpdatePzMothPV); |
| 117 | + |
| 118 | +} // namespace o2::aod |
| 119 | + |
| 120 | +#endif // PWGLF_DATAMODEL_LFHYPERNUCLEIKINKTABLES_H_ |
0 commit comments