1 #ifndef ALIANALYSISTASKITSTPCALIGNMENT_H
2 #define ALIANALYSISTASKITSTPCALIGNMENT_H
4 ///////////////////////////////////////////////////////////////////////////
5 // Class AliAnalysisTaskITSTPCalignment
6 // runs ITS-TPC alignment with TPC vdrift calibration
8 // Origin: Mikolaj Krzewicki, mikolaj.krzewicki@cern.ch
9 ///////////////////////////////////////////////////////////////////////////
11 #include <AliAnalysisTaskSE.h>
17 class AliRelAlignerKalman;
18 class AliRelAlignerKalmanArray;
19 class AliExternalTrackParam;
22 class AliAnalysisTaskITSTPCalignment : public AliAnalysisTaskSE
36 AliAnalysisTaskITSTPCalignment();
37 AliAnalysisTaskITSTPCalignment(const char *name);
38 virtual ~AliAnalysisTaskITSTPCalignment() {}
40 void SetupAlignerArray( Int_t t0, Int_t tend, Int_t slotwidth )
41 { fT0=t0; fTend=tend; fSlotWidth=slotwidth; }
42 void SetFillDebugTree(Bool_t m=kTRUE) {fFillDebugTree=m;}
43 void SetDoQA(Bool_t d=kTRUE) {fDoQA=d;}
44 void SetMinPt(Double_t m) {fMinPt=m;}
45 void SetMinNclsITS(Int_t m) {fMinPointsVol1=m;}
46 void SetMinNclsTPC(Int_t m) {fMinPointsVol2=m;}
47 void DoQA(AliExternalTrackParam* paramsITS,
48 AliExternalTrackParam* paramsTPC);
49 void SetRejectOutliers(Bool_t set=kTRUE){fRejectOutliers=set;}
50 void SetRejectOutliersSigma2Median(Bool_t set=kTRUE){fRejectOutliersSigma2Median=set;}
51 void SetOutRejSigma(Double_t d){fOutRejSigma=d;}
52 void SetOutRejSigma2Median(Double_t d){fOutRejSigma2Median=d;}
53 void SetOutRejSigmaOnMerge(Double_t d){fOutRejSigmaOnMerge=d;}
54 void SetUseITSoutGlobalTrack(Bool_t b){fUseITSoutGlobalTrack=b;}
55 void SetUseITSoutITSSAtrack(Bool_t b){fUseITSoutITSSAtrack=b;}
57 Int_t FindMatchingTracks(TObjArray& arrITS, TObjArray& arrTPC, AliESDEvent* pESD);
58 void AnalyzeESDevent(AliESDEvent* event);
60 //AnalysisTaskSE interface methods
61 virtual void UserCreateOutputObjects();
62 virtual void UserExec(Option_t *option);
63 virtual Bool_t UserNotify();
64 void Terminate(Option_t *);
67 AliRelAlignerKalmanArray* fArrayITSglobal; //! array of aligners with ITS global
68 AliRelAlignerKalmanArray* fArrayITSsa; //! array of aligners ITS standalone
69 TTree* fDebugTree; //! tree
70 AliRelAlignerKalman* fAligner; //! aligner
71 TList* fList; //! list with QA histograms
73 Bool_t fFillDebugTree; // do we write the debug tree?
74 Bool_t fDoQA; // do QA?
77 Int_t fSlotWidth; // slotwidth
78 Double_t fMinPt; // min pt for tracks
79 Int_t fMinPointsVol1; // min clusters its
80 Int_t fMinPointsVol2; // min clusters tpc
81 Bool_t fRejectOutliers; // reject outliers?
82 Double_t fOutRejSigma; // how many outliers
83 Bool_t fRejectOutliersSigma2Median; //
84 Double_t fOutRejSigma2Median; //
85 Double_t fOutRejSigmaOnMerge; //
86 Bool_t fUseITSoutGlobalTrack; //
87 Bool_t fUseITSoutITSSAtrack; //
89 AliAnalysisTaskITSTPCalignment(const AliAnalysisTaskITSTPCalignment&); // not implemented
90 AliAnalysisTaskITSTPCalignment& operator=(const AliAnalysisTaskITSTPCalignment&); // not implemented
92 ClassDef(AliAnalysisTaskITSTPCalignment, 3);