Added methods for finding a given module in the DDL map (F. Prino)
[u/mrichter/AliRoot.git] / STEER / 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;
af885e0f 15class AliESDEvent;
7f6ddf58 16
17//_____________________________________________________________________________
18class AliV0vertexer : public TObject {
19public:
20 AliV0vertexer();
7f6ddf58 21 void SetCuts(const Double_t cuts[7]);
5e4ff34d 22 static void SetDefaultCuts(const Double_t cuts[7]);
7f6ddf58 23
af885e0f 24 Int_t Tracks2V0vertices(AliESDEvent *event);
e23730c7 25
7f6ddf58 26 void GetCuts(Double_t cuts[7]) const;
5e4ff34d 27 static void GetDefaultCuts(Double_t cuts[7]);
7f6ddf58 28
29private:
5e4ff34d 30 static
31 Double_t fgChi2max; // maximal allowed chi2
32 static
f43287fc 33 Double_t fgDNmin; // min allowed impact parameter for the 1st daughter
5e4ff34d 34 static
f43287fc 35 Double_t fgDPmin; // min allowed impact parameter for the 2nd daughter
5e4ff34d 36 static
37 Double_t fgDCAmax; // maximal allowed DCA between the daughter tracks
38 static
46be1d8a 39 Double_t fgCPAmin; // minimal allowed cosine of V0's pointing angle
5e4ff34d 40 static
41 Double_t fgRmin, fgRmax; // max & min radii of the fiducial volume
42
7f6ddf58 43 Double_t fChi2max; // maximal allowed chi2
f43287fc 44 Double_t fDNmin; // min allowed impact parameter for the 1st daughter
45 Double_t fDPmin; // min allowed impact parameter for the 2nd daughter
7f6ddf58 46 Double_t fDCAmax; // maximal allowed DCA between the daughter tracks
46be1d8a 47 Double_t fCPAmin; // minimal allowed cosine of V0's pointing angle
7f6ddf58 48 Double_t fRmin, fRmax; // max & min radii of the fiducial volume
49
46be1d8a 50 ClassDef(AliV0vertexer,3) // V0 verterxer
7f6ddf58 51};
52
fe12e09c 53inline AliV0vertexer::AliV0vertexer() :
54 TObject(),
5e4ff34d 55 fChi2max(fgChi2max),
56 fDNmin(fgDNmin),
57 fDPmin(fgDPmin),
58 fDCAmax(fgDCAmax),
46be1d8a 59 fCPAmin(fgCPAmin),
5e4ff34d 60 fRmin(fgRmin),
61 fRmax(fgRmax)
fe12e09c 62{
7f6ddf58 63}
64
65inline void AliV0vertexer::SetCuts(const Double_t cuts[7]) {
66 fChi2max=cuts[0];
67 fDNmin=cuts[1]; fDPmin=cuts[2];
46be1d8a 68 fDCAmax=cuts[3]; fCPAmin=cuts[4];
7f6ddf58 69 fRmin=cuts[5]; fRmax=cuts[6];
70}
71
5e4ff34d 72inline void AliV0vertexer::SetDefaultCuts(const Double_t cuts[7]) {
73 fgChi2max=cuts[0];
74 fgDNmin=cuts[1]; fgDPmin=cuts[2];
46be1d8a 75 fgDCAmax=cuts[3]; fgCPAmin=cuts[4];
5e4ff34d 76 fgRmin=cuts[5]; fgRmax=cuts[6];
77}
78
7f6ddf58 79inline void AliV0vertexer::GetCuts(Double_t cuts[7]) const {
80 cuts[0]=fChi2max;
81 cuts[1]=fDNmin; cuts[2]=fDPmin;
46be1d8a 82 cuts[3]=fDCAmax; cuts[4]=fCPAmin;
7f6ddf58 83 cuts[5]=fRmin; cuts[6]=fRmax;
84}
85
5e4ff34d 86inline void AliV0vertexer::GetDefaultCuts(Double_t cuts[7]) {
87 cuts[0]=fgChi2max;
88 cuts[1]=fgDNmin; cuts[2]=fgDPmin;
46be1d8a 89 cuts[3]=fgDCAmax; cuts[4]=fgCPAmin;
5e4ff34d 90 cuts[5]=fgRmin; cuts[6]=fgRmax;
91}
92
7f6ddf58 93#endif
94
95