]> git.uio.no Git - u/mrichter/AliRoot.git/blame - ITS/AliCascadeVertexer.h
Initial version, Compiler directive for selection of containers type: either STL...
[u/mrichter/AliRoot.git] / ITS / 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
e23730c7 14class AliESD;
566abf75 15class TTree;
a9a2d814 16class AliITStrackV2;
17class AliV0vertex;
18
19//_____________________________________________________________________________
20class AliCascadeVertexer : public TObject {
21public:
22 AliCascadeVertexer();
23 AliCascadeVertexer(const Double_t cuts[8]);
24 void SetCuts(const Double_t cuts[8]);
25
e23730c7 26 Int_t V0sTracks2CascadeVertices(AliESD *event);
566abf75 27 Int_t V0sTracks2CascadeVertices(TTree *v, TTree *t, TTree *x);
a9a2d814 28 Double_t PropagateToDCA(AliV0vertex *vtx, AliITStrackV2 *trk);
29
30 void GetCuts(Double_t cuts[8]) const;
31
32private:
33 Double_t fChi2max; // maximal allowed chi2
34 Double_t fDV0min; // min. allowed V0 impact parameter
35 Double_t fMassWin; // window around the Lambda mass
36 Double_t fDBachMin; // min. allowed bachelor impact parameter
37 Double_t fDCAmax; // maximal allowed DCA between the V0 and the track
38 Double_t fCPAmax; // maximal allowed cosine of the cascade pointing angle
39 Double_t fRmin, fRmax;// max & min radii of the fiducial volume
40
41 ClassDef(AliCascadeVertexer,1) // cascade verterxer
42};
43
44inline AliCascadeVertexer::AliCascadeVertexer() {
45 fChi2max=33.;
46 fDV0min=0.015; fMassWin=0.05; fDBachMin=0.015;
47 fDCAmax=0.01; fCPAmax=0.025;
48 fRmin=0.5; fRmax=2.5;
49}
50
51inline AliCascadeVertexer::AliCascadeVertexer(const Double_t cuts[8]) {
52 fChi2max=cuts[0];
53 fDV0min=cuts[1]; fMassWin=cuts[2]; fDBachMin=cuts[3];
54 fDCAmax=cuts[4]; fCPAmax=cuts[5];
55 fRmin=cuts[6]; fRmax=cuts[7];
56}
57
58inline void AliCascadeVertexer::SetCuts(const Double_t cuts[8]) {
59 fChi2max=cuts[0];
60 fDV0min=cuts[1]; fMassWin=cuts[2]; fDBachMin=cuts[3];
61 fDCAmax=cuts[4]; fCPAmax=cuts[5];
62 fRmin=cuts[6]; fRmax=cuts[7];
63}
64
65inline void AliCascadeVertexer::GetCuts(Double_t cuts[8]) const {
66 cuts[0]=fChi2max;
67 cuts[1]=fDV0min; cuts[2]=fMassWin; cuts[3]=fDBachMin;
68 cuts[4]=fDCAmax; cuts[5]=fCPAmax;
69 cuts[6]=fRmin; cuts[7]=fRmax;
70}
71
72#endif
73