New class AliESDEvent, backward compatibility with the old AliESD (Christian)
[u/mrichter/AliRoot.git] / STEER / AliCascadeVertexer.h
CommitLineData
a9a2d814 1#ifndef ALICASCADEVERTEXER_H
2#define ALICASCADEVERTEXER_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6//------------------------------------------------------------------
7// Cascade Vertexer Class
18856a77 8// Reads V0s and tracks, writes out cascade vertices
a9a2d814 9// Origin: Christian Kuhn, IReS, Strasbourg, christian.kuhn@ires.in2p3.fr
10//------------------------------------------------------------------
11
12#include "TObject.h"
13
af885e0f 14class AliESDEvent;
566abf75 15class TTree;
c7bafca9 16class AliESDv0;
17class AliExternalTrackParam;
a9a2d814 18
19//_____________________________________________________________________________
20class AliCascadeVertexer : public TObject {
21public:
22 AliCascadeVertexer();
a9a2d814 23 void SetCuts(const Double_t cuts[8]);
5e4ff34d 24 static void SetDefaultCuts(const Double_t cuts[8]);
a9a2d814 25
af885e0f 26 Int_t V0sTracks2CascadeVertices(AliESDEvent *event);
c7bafca9 27 Double_t PropagateToDCA(AliESDv0 *vtx,AliExternalTrackParam *trk,Double_t b);
a9a2d814 28
29 void GetCuts(Double_t cuts[8]) const;
5e4ff34d 30 static void GetDefaultCuts(Double_t cuts[8]);
a9a2d814 31
32private:
5e4ff34d 33 static
34 Double_t fgChi2max; // maximal allowed chi2
35 static
36 Double_t fgDV0min; // min. allowed V0 impact parameter
37 static
38 Double_t fgMassWin; // window around the Lambda mass
39 static
40 Double_t fgDBachMin; // min. allowed bachelor impact parameter
41 static
42 Double_t fgDCAmax; // maximal allowed DCA between the V0 and the track
43 static
44 Double_t fgCPAmax; // maximal allowed cosine of the cascade pointing angle
45 static
46 Double_t fgRmin, fgRmax;// max & min radii of the fiducial volume
47
a9a2d814 48 Double_t fChi2max; // maximal allowed chi2
49 Double_t fDV0min; // min. allowed V0 impact parameter
50 Double_t fMassWin; // window around the Lambda mass
51 Double_t fDBachMin; // min. allowed bachelor impact parameter
52 Double_t fDCAmax; // maximal allowed DCA between the V0 and the track
53 Double_t fCPAmax; // maximal allowed cosine of the cascade pointing angle
54 Double_t fRmin, fRmax;// max & min radii of the fiducial volume
55
5e4ff34d 56 ClassDef(AliCascadeVertexer,2) // cascade verterxer
a9a2d814 57};
58
fe12e09c 59inline AliCascadeVertexer::AliCascadeVertexer() :
60 TObject(),
5e4ff34d 61 fChi2max(fgChi2max),
62 fDV0min(fgDV0min),
63 fMassWin(fgMassWin),
64 fDBachMin(fgDBachMin),
65 fDCAmax(fgDCAmax),
66 fCPAmax(fgCPAmax),
67 fRmin(fgRmin),
68 fRmax(fgRmax)
fe12e09c 69{
a9a2d814 70}
71
72inline void AliCascadeVertexer::SetCuts(const Double_t cuts[8]) {
73 fChi2max=cuts[0];
74 fDV0min=cuts[1]; fMassWin=cuts[2]; fDBachMin=cuts[3];
75 fDCAmax=cuts[4]; fCPAmax=cuts[5];
76 fRmin=cuts[6]; fRmax=cuts[7];
77}
78
5e4ff34d 79inline void AliCascadeVertexer::SetDefaultCuts(const Double_t cuts[8]) {
80 fgChi2max=cuts[0];
81 fgDV0min=cuts[1]; fgMassWin=cuts[2]; fgDBachMin=cuts[3];
82 fgDCAmax=cuts[4]; fgCPAmax=cuts[5];
83 fgRmin=cuts[6]; fgRmax=cuts[7];
84}
85
a9a2d814 86inline void AliCascadeVertexer::GetCuts(Double_t cuts[8]) const {
87 cuts[0]=fChi2max;
88 cuts[1]=fDV0min; cuts[2]=fMassWin; cuts[3]=fDBachMin;
89 cuts[4]=fDCAmax; cuts[5]=fCPAmax;
90 cuts[6]=fRmin; cuts[7]=fRmax;
91}
92
5e4ff34d 93inline void AliCascadeVertexer::GetDefaultCuts(Double_t cuts[8]) {
94 cuts[0]=fgChi2max;
95 cuts[1]=fgDV0min; cuts[2]=fgMassWin; cuts[3]=fgDBachMin;
96 cuts[4]=fgDCAmax; cuts[5]=fgCPAmax;
97 cuts[6]=fgRmin; cuts[7]=fgRmax;
98}
99
a9a2d814 100#endif
101