]> git.uio.no Git - u/mrichter/AliRoot.git/blame - TPC/Upgrade/AliToyMCReconstruction.h
Bug fix. Adding the header files
[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;
4a777885 10class AliToyMCEvent;
d1cf83f5 11
12class AliToyMCReconstruction : public TObject {
13public:
14 AliToyMCReconstruction();
15 virtual ~AliToyMCReconstruction();
16
17 enum ECorrType {
18 kNoCorrection = 0,
19 kTPCCenter,
20 kAverageEta,
21 kIdeal
22 };
23
4a777885 24 void RunReco(const char* file, Int_t nmaxEv=-1);
25
d1cf83f5 26 // reconstruction settings
27 void SetRecoSettings(Int_t clusterType, Int_t seedingRow, Int_t seedingDist, ECorrType correctionType)
28 { fClusterType=clusterType; fSeedingRow=seedingRow, fSeedingDist=seedingDist, fCorrectionType=correctionType; }
29
30 void SetClusterType(Int_t type) { fClusterType = type; }
31 Int_t GetClusterType() const { return fClusterType; }
32
33 void SetSeedingRow(Int_t row) { fSeedingRow = row; }
34 Int_t GetSeedingRow() const { return fSeedingRow; }
35
36 void SetSeedingDist(Int_t dist) { fSeedingDist = dist; }
37 Int_t GetSeedingDist() const { return fSeedingDist; }
38
39 void SetCorrType(ECorrType type) { fCorrectionType = type; }
40 ECorrType GetCorrectionType() const { return fCorrectionType; }
41
600eaa0d 42 void SetUseMaterialBudget(Bool_t mat) { fUseMaterial = mat; }
43 Bool_t GetUseMaterialBudget() const { return fUseMaterial; }
44
45 void SetIdealTracking(Bool_t tr) { fIdealTracking = tr; }
46 Bool_t GetIdealTracking() const { return fIdealTracking; }
47
d1cf83f5 48 void SetTree(TTree *tree) { fTree=tree; }
49 TTree* GetTree() const { return fTree; }
50
51 AliExternalTrackParam* GetSeedFromTrack(const AliToyMCTrack * const tr);
52 AliExternalTrackParam* GetFittedTrackFromSeed(const AliToyMCTrack *tr, const AliExternalTrackParam *seed);
53
54 void InitSpaceCharge();
55
56 Double_t GetVDrift() const;
57 Double_t GetZLength(Int_t roc) const;
58
59private:
60 AliToyMCReconstruction(const AliToyMCReconstruction &rec);
61 AliToyMCReconstruction& operator= (AliToyMCReconstruction& rec);
62
63 void SetTrackPointFromCluster(const AliTPCclusterMI *cl, AliTrackPoint &p);
64 void ClusterToSpacePoint(const AliTPCclusterMI *cl, Float_t xyz[3]);
65
66 // reco settings
67 Int_t fSeedingRow; // first row used for seeding
68 Int_t fSeedingDist; // distance of seeds
69 Int_t fClusterType; // cluster type to use
70 ECorrType fCorrectionType; // type of space point correction
71 Bool_t fDoTrackFit; // do track fitting
72 Bool_t fUseMaterial; // use material budget in tracking
600eaa0d 73 Bool_t fIdealTracking; // use ideal coordinates for tracking
d1cf83f5 74
75 // current reconstruction info
76 Double_t fTime0; // current time0 used for reconstruction
600eaa0d 77 Bool_t fCreateT0seed; // if current seed is the T0 seed
d1cf83f5 78
79 TTreeSRedirector *fStreamer; // debug streamer
80 TTree *fTree; // input tree with ToyMC info
4a777885 81 AliToyMCEvent *fEvent; // input event
d1cf83f5 82
83 AliTPCParam *fTPCParam; // tpc reco parameters
84 AliTPCSpaceCharge3D *fSpaceCharge; // space charge
85
86 ClassDef(AliToyMCReconstruction,0)
87};
88
89
90#endif