fixes in copy constructor and assignment operator, added protection
[u/mrichter/AliRoot.git] / 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; }
8c75f668 33 void SetVertexerTracksCuts(Int_t mode,Int_t ncuts,Double_t cuts[12]);
34 void SetVertexerTracksCutsITS(Int_t ncuts,Double_t cuts[12])
a00021a7 35 { SetVertexerTracksCuts(0,ncuts,cuts); return; }
8c75f668 36 void SetVertexerTracksCutsTPC(Int_t ncuts,Double_t cuts[12])
a00021a7 37 { SetVertexerTracksCuts(1,ncuts,cuts); return; }
f2a195c1 38 Bool_t GetVertexerTracksConstraintITS() const { return fVertexerTracksConstraintITS; }
39 Bool_t GetVertexerTracksConstraintTPC() const { return fVertexerTracksConstraintTPC; }
a00021a7 40 Int_t GetVertexerTracksNCuts() const { return fVertexerTracksNCuts; }
41 void GetVertexerTracksCuts(Int_t mode,Double_t *cuts) const;
42 void GetVertexerTracksCutsITS(Double_t *cuts) const
43 { GetVertexerTracksCuts(0,cuts); return; }
44 void GetVertexerTracksCutsTPC(Double_t *cuts) const
45 { GetVertexerTracksCuts(1,cuts); return; }
46
47 AliGRPRecoParam(const AliGRPRecoParam&);
48 AliGRPRecoParam& operator=(const AliGRPRecoParam&);
49
50 protected:
51 //
52
71f6cda4 53 Double_t fMostProbablePt; // to be used for B=0 tracking
f2a195c1 54 Bool_t fVertexerTracksConstraintITS; // diamond constr for AliVertexerTracks
55 Bool_t fVertexerTracksConstraintTPC; // diamond constr for AliVertexerTracks
a00021a7 56 Int_t fVertexerTracksNCuts; // number of cuts for AliVertexerTracks
57 // cuts for AliVertexerTracks: ITS mode
58 Double_t fVertexerTracksITSdcacut; // general dca
59 Double_t fVertexerTracksITSdcacutIter0; // dca in iteration 0
60 Double_t fVertexerTracksITSmaxd0z0; // max d0z0
61 Double_t fVertexerTracksITSminCls; // min clusters
62 Double_t fVertexerTracksITSmintrks; // min tracks
63 Double_t fVertexerTracksITSnsigma; // n sigma for d0 cut
64 Double_t fVertexerTracksITSnindetfitter; // min det to try inversion
65 Double_t fVertexerTracksITSmaxtgl; // max tgl
66 Double_t fVertexerTracksITSfidR; // fiducial radius
67 Double_t fVertexerTracksITSfidZ; // fiducial z
8c75f668 68 Double_t fVertexerTracksITSalgo; // finder algo
69 Double_t fVertexerTracksITSalgoIter0; // finder algo iteration 0
a00021a7 70
71 // cuts for AliVertexerTracks: TPC-only mode
72 Double_t fVertexerTracksTPCdcacut; // general dca
73 Double_t fVertexerTracksTPCdcacutIter0; // dca in iteration 0
74 Double_t fVertexerTracksTPCmaxd0z0; // max d0z0
75 Double_t fVertexerTracksTPCminCls; // min clusters
76 Double_t fVertexerTracksTPCmintrks; // min tracks
77 Double_t fVertexerTracksTPCnsigma; // n sigma for d0 cut
78 Double_t fVertexerTracksTPCnindetfitter; // min det to try inversion
79 Double_t fVertexerTracksTPCmaxtgl; // max tgl
80 Double_t fVertexerTracksTPCfidR; // fiducial radius
81 Double_t fVertexerTracksTPCfidZ; // fiducial z
8c75f668 82 Double_t fVertexerTracksTPCalgo; // finder algo
83 Double_t fVertexerTracksTPCalgoIter0; // finder algo iteration 0
a00021a7 84
8c75f668 85 ClassDef(AliGRPRecoParam,4) // global reco parameters
a00021a7 86};
87
88#endif