Project
Loading...
Searching...
No Matches
V0.h
Go to the documentation of this file.
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#ifndef ALICEO2_V0_H
13#define ALICEO2_V0_H
14
18#include "ReconstructionDataFormats/DecayNBodyIndex.h" // RS Remove after dropping indices in O2Physics
19#include <array>
20#include <Math/SVector.h>
21
22namespace o2
23{
24namespace dataformats
25{
26
28{
29 public:
33
34 V0() = default;
35
36 V0(const std::array<float, 3>& xyz, const std::array<float, 3>& pxyz, const std::array<float, 6>& covxyz,
38
39 const Track& getProng(int i) const { return mProngs[i]; }
40 Track& getProng(int i) { return mProngs[i]; }
41 void setProng(int i, const Track& t) { mProngs[i] = t; }
42
43 float getCosPA() const { return mCosPA; }
44 void setCosPA(float c) { mCosPA = c; }
45
46 float getDCA() const { return mDCA; }
47 void setDCA(float d) { mDCA = d; }
48
49 float calcMass2() const { return calcMass2PID(mProngs[0].getPID(), mProngs[1].getPID()); }
50 float calcMass2PID(PID pidPos, PID pidNeg) const { return calcMass2(PID::getMass2(pidPos), PID::getMass2(pidNeg)); }
51 float calcMass2(float massPos2, float massNeg2) const;
52
54 float calcMass2AsK0() const { return calcMass2PID(PID::Pion, PID::Pion); }
61 float calcAPQt() const;
62 float calcAPAlpha() const;
63 float calcR2() const { return getX() * getX() + getY() * getY(); }
64
65 protected:
66 std::array<Track, 2> mProngs; // prongs kinematics at vertex
67 float mCosPA = 0; // cos of pointing angle
68 float mDCA = 9990; // distance of closest approach of prongs
69
71};
72
73} // namespace dataformats
74} // namespace o2
75#endif
particle ids, masses, names class definition
Base track model for the Barrel, params only, w/o covariance.
int32_t i
uint32_t c
Definition RawData.h:2
Extention of GlobalTrackID by flags relevant for verter-track association.
float calcMass2AsPhoton() const
Definition V0.h:53
float getCosPA() const
Definition V0.h:43
float calcMass2AsHyperhydrog4() const
Definition V0.h:59
float calcMass2PID(PID pidPos, PID pidNeg) const
Definition V0.h:50
o2::track::TrackParCov Track
Definition V0.h:31
const Track & getProng(int i) const
Definition V0.h:39
void setDCA(float d)
Definition V0.h:47
std::array< Track, 2 > mProngs
Definition V0.h:66
float calcMass2() const
Definition V0.h:49
void setCosPA(float c)
Definition V0.h:44
float calcR2() const
Definition V0.h:63
float calcMass2AsAntiHyperTriton() const
Definition V0.h:58
float calcMass2AsK0() const
Definition V0.h:54
float calcMass2AsAntiLambda() const
Definition V0.h:56
float calcAPAlpha() const
Definition V0.cxx:39
Track & getProng(int i)
Definition V0.h:40
float calcAPQt() const
Definition V0.cxx:55
float mCosPA
Definition V0.h:67
float calcMass2AsHyperTriton() const
Definition V0.h:57
void setProng(int i, const Track &t)
Definition V0.h:41
float getDCA() const
Definition V0.h:46
float calcMass2AsAntiHyperhydrog4() const
Definition V0.h:60
float calcMass2AsLambda() const
Definition V0.h:55
static constexpr ID Electron
Definition PID.h:94
static constexpr ID Helium3
Definition PID.h:101
static constexpr ID Pion
Definition PID.h:96
static constexpr ID K0
Definition PID.h:111
static constexpr ID Proton
Definition PID.h:98
static constexpr ID Alpha
Definition PID.h:102
TrackParCovF TrackParCov
Definition Track.h:33
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...