]> git.uio.no Git - u/mrichter/AliRoot.git/blame - TPC/Upgrade/AliToyMCReconstruction.h
o make reconstruction macro compilable
[u/mrichter/AliRoot.git] / TPC / Upgrade / AliToyMCReconstruction.h
CommitLineData
d1cf83f5 1#ifndef AliToyMCReconstruction_H
2#define AliToyMCReconstruction_H
3
4#include <TObject.h>
5
6class TTree;
7
8class TTreeSRedirector;
9class AliExternalTrackParam;
10
11class AliToyMCReconstruction : public TObject {
12public:
13 AliToyMCReconstruction();
14 virtual ~AliToyMCReconstruction();
15
16 enum ECorrType {
17 kNoCorrection = 0,
18 kTPCCenter,
19 kAverageEta,
20 kIdeal
21 };
22
23 // reconstruction settings
24 void SetRecoSettings(Int_t clusterType, Int_t seedingRow, Int_t seedingDist, ECorrType correctionType)
25 { fClusterType=clusterType; fSeedingRow=seedingRow, fSeedingDist=seedingDist, fCorrectionType=correctionType; }
26
27 void SetClusterType(Int_t type) { fClusterType = type; }
28 Int_t GetClusterType() const { return fClusterType; }
29
30 void SetSeedingRow(Int_t row) { fSeedingRow = row; }
31 Int_t GetSeedingRow() const { return fSeedingRow; }
32
33 void SetSeedingDist(Int_t dist) { fSeedingDist = dist; }
34 Int_t GetSeedingDist() const { return fSeedingDist; }
35
36 void SetCorrType(ECorrType type) { fCorrectionType = type; }
37 ECorrType GetCorrectionType() const { return fCorrectionType; }
38
39 void SetTree(TTree *tree) { fTree=tree; }
40 TTree* GetTree() const { return fTree; }
41
42 AliExternalTrackParam* GetSeedFromTrack(const AliToyMCTrack * const tr);
43 AliExternalTrackParam* GetFittedTrackFromSeed(const AliToyMCTrack *tr, const AliExternalTrackParam *seed);
44
45 void InitSpaceCharge();
46
47 Double_t GetVDrift() const;
48 Double_t GetZLength(Int_t roc) const;
49
50private:
51 AliToyMCReconstruction(const AliToyMCReconstruction &rec);
52 AliToyMCReconstruction& operator= (AliToyMCReconstruction& rec);
53
54 void SetTrackPointFromCluster(const AliTPCclusterMI *cl, AliTrackPoint &p);
55 void ClusterToSpacePoint(const AliTPCclusterMI *cl, Float_t xyz[3]);
56
57 // reco settings
58 Int_t fSeedingRow; // first row used for seeding
59 Int_t fSeedingDist; // distance of seeds
60 Int_t fClusterType; // cluster type to use
61 ECorrType fCorrectionType; // type of space point correction
62 Bool_t fDoTrackFit; // do track fitting
63 Bool_t fUseMaterial; // use material budget in tracking
64
65 // current reconstruction info
66 Double_t fTime0; // current time0 used for reconstruction
67
68 TTreeSRedirector *fStreamer; // debug streamer
69 TTree *fTree; // input tree with ToyMC info
70
71 AliTPCParam *fTPCParam; // tpc reco parameters
72 AliTPCSpaceCharge3D *fSpaceCharge; // space charge
73
74 ClassDef(AliToyMCReconstruction,0)
75};
76
77
78#endif