Setting of aliases to rawReader done only once. Base decision on cosmic or calib...
[u/mrichter/AliRoot.git] / STEER / STEER / AliGRPRecoParam.h
CommitLineData
a00021a7 1#ifndef ALIGRPRECOPARAM_H
2#define ALIGRPRECOPARAM_H
3/* Copyright(c) 2007-2009, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6
7///////////////////////////////////////////////////////////////////////////////
8// //
9// Class with global reconstruction parameters //
10// (initially, parameters for AliVertexerTracks) //
11// Origin: andrea.dainese@lnl.infn.it //
12// //
13///////////////////////////////////////////////////////////////////////////////
14
15
16#include "AliDetectorRecoParam.h"
17
18class AliGRPRecoParam : public AliDetectorRecoParam
19{
20 public:
21 AliGRPRecoParam();
22 virtual ~AliGRPRecoParam();
23
24 static AliGRPRecoParam *GetLowFluxParam();// make reco parameters for low flux env.
25 static AliGRPRecoParam *GetHighFluxParam();// make reco parameters for high flux env.
f2a195c1 26 static AliGRPRecoParam *GetCosmicTestParam();// make reco parameters for cosmics env.
a00021a7 27
71f6cda4 28 void SetMostProbablePt(Double_t pt=0.350) { fMostProbablePt=pt; return; }
29 Double_t GetMostProbablePt() const { return fMostProbablePt; }
30
f2a195c1 31 void SetVertexerTracksConstraintITS(Bool_t constr=kTRUE) { fVertexerTracksConstraintITS=constr; return; }
32 void SetVertexerTracksConstraintTPC(Bool_t constr=kTRUE) { fVertexerTracksConstraintTPC=constr; return; }
7878b3ae 33 void SetVertexerTracksCuts(Int_t mode,Int_t ncuts,Double_t* cuts);
34 void SetVertexerTracksCutsITS(Int_t ncuts,Double_t* cuts)
a00021a7 35 { SetVertexerTracksCuts(0,ncuts,cuts); return; }
7878b3ae 36 void SetVertexerTracksCutsTPC(Int_t ncuts,Double_t* cuts)
a00021a7 37 { SetVertexerTracksCuts(1,ncuts,cuts); return; }
61a14552 38 void SetVertexerV0Cuts(Int_t ncuts,Double_t cuts[7]);
39 void SetVertexerCascadeCuts(Int_t ncuts,Double_t cuts[8]);
339fbe23 40 void SetVertexerTracksTPCClusterization(Bool_t use, Double_t dzcut, Double_t nsigmazcut);
41 void SetVertexerTracksITSClusterization(Bool_t use, Double_t dzcut, Double_t nsigmazcut);
f2a195c1 42 Bool_t GetVertexerTracksConstraintITS() const { return fVertexerTracksConstraintITS; }
43 Bool_t GetVertexerTracksConstraintTPC() const { return fVertexerTracksConstraintTPC; }
a00021a7 44 Int_t GetVertexerTracksNCuts() const { return fVertexerTracksNCuts; }
61a14552 45 Int_t GetVertexerV0NCuts() const { return fVertexerV0NCuts; }
46 Int_t GetVertexerCascadeNCuts() const { return fVertexerCascadeNCuts; }
8eaa1a42 47 void GetVertexerTracksCuts(Int_t mode,Double_t *cuts,Int_t n) const;
48 void GetVertexerTracksCutsITS(Double_t *cuts,Int_t n) const
49 { GetVertexerTracksCuts(0,cuts,n); return; }
50 void GetVertexerTracksCutsTPC(Double_t *cuts,Int_t n) const
51 { GetVertexerTracksCuts(1,cuts,n); return; }
61a14552 52 void GetVertexerV0Cuts(Double_t *cuts) const;
53 void GetVertexerCascadeCuts(Double_t *cuts) const;
a00021a7 54
55 AliGRPRecoParam(const AliGRPRecoParam&);
56 AliGRPRecoParam& operator=(const AliGRPRecoParam&);
57
58 protected:
59 //
60
71f6cda4 61 Double_t fMostProbablePt; // to be used for B=0 tracking
f2a195c1 62 Bool_t fVertexerTracksConstraintITS; // diamond constr for AliVertexerTracks
63 Bool_t fVertexerTracksConstraintTPC; // diamond constr for AliVertexerTracks
61a14552 64 Int_t fVertexerTracksNCuts; // number of cuts for AliVertexerTracks
65
a00021a7 66 // cuts for AliVertexerTracks: ITS mode
67 Double_t fVertexerTracksITSdcacut; // general dca
68 Double_t fVertexerTracksITSdcacutIter0; // dca in iteration 0
69 Double_t fVertexerTracksITSmaxd0z0; // max d0z0
70 Double_t fVertexerTracksITSminCls; // min clusters
71 Double_t fVertexerTracksITSmintrks; // min tracks
72 Double_t fVertexerTracksITSnsigma; // n sigma for d0 cut
73 Double_t fVertexerTracksITSnindetfitter; // min det to try inversion
74 Double_t fVertexerTracksITSmaxtgl; // max tgl
75 Double_t fVertexerTracksITSfidR; // fiducial radius
76 Double_t fVertexerTracksITSfidZ; // fiducial z
8c75f668 77 Double_t fVertexerTracksITSalgo; // finder algo
78 Double_t fVertexerTracksITSalgoIter0; // finder algo iteration 0
3f2db92f 79 //
80 Double_t fVertexerTracksITSMVTukey2; // Tukey constant for multivertexer
81 Double_t fVertexerTracksITSMVSig2Ini; // initial sig2 for multivertexer
82 Double_t fVertexerTracksITSMVMaxSigma2; // max sig2 to accept for multivertexer
83 Double_t fVertexerTracksITSMVMinSig2Red; // min sig2 to to consider multivertexer stuck (then push)
84 Double_t fVertexerTracksITSMVMinDst; // min distance between 2 iterations to stop multi-vertex search
85 Double_t fVertexerTracksITSMVScanStep; // z-scan step for multivertexer
86 Double_t fVertexerTracksITSMVMaxWghNtr; // min wdist*ncontrib between to vertices to eliminate
87 Double_t fVertexerTracksITSMVFinalWBinary; // for the final fit used binary weights
88 Double_t fVertexerTracksITSMVBCSpacing; // assumer BC spacing
7878b3ae 89 //
90 Double_t fVertexerTracksITSclusterize; // pre-clusterization of tracks
91 Double_t fVertexerTracksITSclusterdz; // cut in absolute dz
92 Double_t fVertexerTracksITSclusternsigmaz; // cut in standardized dz
93
a00021a7 94 // cuts for AliVertexerTracks: TPC-only mode
95 Double_t fVertexerTracksTPCdcacut; // general dca
96 Double_t fVertexerTracksTPCdcacutIter0; // dca in iteration 0
97 Double_t fVertexerTracksTPCmaxd0z0; // max d0z0
98 Double_t fVertexerTracksTPCminCls; // min clusters
99 Double_t fVertexerTracksTPCmintrks; // min tracks
100 Double_t fVertexerTracksTPCnsigma; // n sigma for d0 cut
101 Double_t fVertexerTracksTPCnindetfitter; // min det to try inversion
102 Double_t fVertexerTracksTPCmaxtgl; // max tgl
103 Double_t fVertexerTracksTPCfidR; // fiducial radius
104 Double_t fVertexerTracksTPCfidZ; // fiducial z
8c75f668 105 Double_t fVertexerTracksTPCalgo; // finder algo
106 Double_t fVertexerTracksTPCalgoIter0; // finder algo iteration 0
3f2db92f 107 //
108 Double_t fVertexerTracksTPCMVTukey2; // Tukey constant for multivertexer
109 Double_t fVertexerTracksTPCMVSig2Ini; // initial sig2 for multivertexer
110 Double_t fVertexerTracksTPCMVMaxSigma2; // max sig2 to accept for multivertexer
111 Double_t fVertexerTracksTPCMVMinSig2Red; // min sig2 to to consider multivertexer stuck (then push)
112 Double_t fVertexerTracksTPCMVMinDst; // min distance between 2 iterations to stop multi-vertex search
113 Double_t fVertexerTracksTPCMVScanStep; // z-scan step for multivertexer
114 Double_t fVertexerTracksTPCMVMaxWghNtr; // min wdist*ncontrib between to vertices to eliminate
115 Double_t fVertexerTracksTPCMVFinalWBinary; // for the final fit used binary weights
116 Double_t fVertexerTracksTPCMVBCSpacing; // assumer BC spacing
117 //
7878b3ae 118 Double_t fVertexerTracksTPCclusterize; // pre-clusterization of tracks
119 Double_t fVertexerTracksTPCclusterdz; // cut in absolute dz
120 Double_t fVertexerTracksTPCclusternsigmaz; // cut in standardized dz
121 //
61a14552 122 Int_t fVertexerV0NCuts; // number of cuts for AliV0vertexer
123
124 // cuts for AliV0vertexer:
125 Double_t fVertexerV0Chi2max; //max chi2
126 Double_t fVertexerV0DNmin; //min imp parameter for the 1st daughter
127 Double_t fVertexerV0DPmin; //min imp parameter for the 2nd daughter
128 Double_t fVertexerV0DCAmax; //max DCA between the daughter tracks
129 Double_t fVertexerV0CPAmin; //min cosine of V0's pointing angle
130 Double_t fVertexerV0Rmin; //min radius of the fiducial volume
131 Double_t fVertexerV0Rmax; //max radius of the fiducial volume
132
133 Int_t fVertexerCascadeNCuts; // number of cuts for AliCascadeVertexer
134
135 // cuts for AliCascadeVertexer:
136 Double_t fVertexerCascadeChi2max; //maximal allowed chi2
137 Double_t fVertexerCascadeDV0min; //min V0 impact parameter
138 Double_t fVertexerCascadeMassWin; //"window" around the Lambda mass
139 Double_t fVertexerCascadeDBachMin; //min bachelor impact parameter
140 Double_t fVertexerCascadeDCAmax; //max DCA between the V0 and the track
141 Double_t fVertexerCascadeCPAmin; //min cosine of the cascade pointing angle
142 Double_t fVertexerCascadeRmin; //min radius of the fiducial volume
143 Double_t fVertexerCascadeRmax; //max radius of the fiducial volume
144
7878b3ae 145 ClassDef(AliGRPRecoParam,7) // global reco parameters
a00021a7 146};
147
339fbe23 148inline void AliGRPRecoParam::SetVertexerTracksTPCClusterization(Bool_t use, Double_t dzcut, Double_t nsigmazcut)
149{
150 // set TPC tracks clustering settings
151 if(use) fVertexerTracksTPCclusterize=1.;
152 else fVertexerTracksTPCclusterize=0.;
153 fVertexerTracksTPCclusterdz=dzcut;
154 fVertexerTracksTPCclusternsigmaz=nsigmazcut;
155}
156
157inline void AliGRPRecoParam::SetVertexerTracksITSClusterization(Bool_t use, Double_t dzcut, Double_t nsigmazcut)
158{
159 // set ITS tracks clustering settings
160 if(use) fVertexerTracksITSclusterize=1.;
161 else fVertexerTracksITSclusterize=0.;
162 fVertexerTracksITSclusterdz=dzcut;
163 fVertexerTracksITSclusternsigmaz=nsigmazcut;
164}
165
166
a00021a7 167#endif