Print removed
[u/mrichter/AliRoot.git] / ITS / AliV0vertexer.h
CommitLineData
7f6ddf58 1#ifndef ALIV0VERTEXER_H
2#define ALIV0VERTEXER_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6//------------------------------------------------------------------
7// V0 Vertexer Class
18856a77 8// reads tracks writes out V0 vertices
7f6ddf58 9// Origin: Iouri Belikov, IReS, Strasbourg, Jouri.Belikov@cern.ch
10//------------------------------------------------------------------
11
12#include "TObject.h"
13
566abf75 14class TTree;
7f6ddf58 15class AliITStrackV2;
e23730c7 16class AliESD;
7f6ddf58 17
18//_____________________________________________________________________________
19class AliV0vertexer : public TObject {
20public:
21 AliV0vertexer();
22 AliV0vertexer(const Double_t cuts[7]);
23 void SetCuts(const Double_t cuts[7]);
5d390eda 24 void SetVertex(Double_t *vtx) { fX=vtx[0]; fY=vtx[1]; fZ=vtx[2]; }
7f6ddf58 25
e23730c7 26 Int_t Tracks2V0vertices(AliESD *event);
27
566abf75 28 Int_t Tracks2V0vertices(TTree *in, TTree *out);
18856a77 29 Double_t PropagateToDCA(AliITStrackV2 *nt, AliITStrackV2 *pt) const;
7f6ddf58 30
31 void GetCuts(Double_t cuts[7]) const;
18856a77 32 void GetVertex(Double_t *vtx) const { vtx[0]=fX; vtx[1]=fY; vtx[2]=fZ; }
7f6ddf58 33
34private:
5d390eda 35
7f6ddf58 36 Double_t fChi2max; // maximal allowed chi2
37 Double_t fDNmin; // min. allowed negative daughter's impact parameter
38 Double_t fDPmin; // min. allowed positive daughter's impact parameter
39 Double_t fDCAmax; // maximal allowed DCA between the daughter tracks
40 Double_t fCPAmax; // maximal allowed cosine of V0's pointing angle
41 Double_t fRmin, fRmax; // max & min radii of the fiducial volume
42
5d390eda 43 Double_t fX; // X-coordinate of the primary vertex
44 Double_t fY; // Y-coordinate of the primary vertex
45 Double_t fZ; // Z-coordinate of the primary vertex
46
7f6ddf58 47 ClassDef(AliV0vertexer,1) // V0 verterxer
48};
49
50inline AliV0vertexer::AliV0vertexer() {
5d390eda 51 fChi2max=33.;
52 fDNmin=0.015; fDPmin=0.015;
53 fDCAmax=0.01; fCPAmax=0.025;
54 fRmin=0.5; fRmax=2.5;
55 fX=fY=fZ=0.;
7f6ddf58 56}
57
58inline AliV0vertexer::AliV0vertexer(const Double_t cuts[7]) {
59 fChi2max=cuts[0];
60 fDNmin=cuts[1]; fDPmin=cuts[2];
61 fDCAmax=cuts[3]; fCPAmax=cuts[4];
62 fRmin=cuts[5]; fRmax=cuts[6];
5d390eda 63 fX=fY=fZ=0.;
7f6ddf58 64}
65
66inline void AliV0vertexer::SetCuts(const Double_t cuts[7]) {
67 fChi2max=cuts[0];
68 fDNmin=cuts[1]; fDPmin=cuts[2];
69 fDCAmax=cuts[3]; fCPAmax=cuts[4];
70 fRmin=cuts[5]; fRmax=cuts[6];
71}
72
73inline void AliV0vertexer::GetCuts(Double_t cuts[7]) const {
74 cuts[0]=fChi2max;
75 cuts[1]=fDNmin; cuts[2]=fDPmin;
76 cuts[3]=fDCAmax; cuts[4]=fCPAmax;
77 cuts[5]=fRmin; cuts[6]=fRmax;
78}
79
80#endif
81
82