1 #ifndef ALIANALYSISTASKSDDRP
2 #define ALIANALYSISTASKSDDRP
4 /* Copyright(c) 1998-2010, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
7 //*************************************************************************
8 // Class AliAnalysiTaskSDDRP
9 // AliAnalysisTaskSE to extract from ESD + ESDfreinds + ITS rec points
10 // performance plots for SDD detector
12 // Author: F. Prino, prino@to.infn.it
13 //*************************************************************************
22 class AliITSresponseSDD;
24 #include "AliAnalysisTaskSE.h"
26 class AliAnalysisTaskSDDRP : public AliAnalysisTaskSE {
30 AliAnalysisTaskSDDRP();
31 virtual ~AliAnalysisTaskSDDRP();
32 virtual void UserExec(Option_t *option);
33 virtual void UserCreateOutputObjects();
34 virtual void Terminate(Option_t *option);
36 void SetUseITSstandaloneTracks(Bool_t use){
39 void SetMinITSPoints(Int_t minp=3){
42 void SetMinTPCPoints(Int_t minp=70){
45 void SetUseOnlyCINT1BTriggers(Bool_t use=kTRUE){
48 void SetMinPfordEdx(Float_t minp=0.5){
51 void SetExcludeBadModules(Bool_t opt=kTRUE){
54 Bool_t CheckModule(Int_t lay, Int_t lad, Int_t det) const;
58 AliAnalysisTaskSDDRP(const AliAnalysisTaskSDDRP &source);
59 AliAnalysisTaskSDDRP& operator=(const AliAnalysisTaskSDDRP &source);
61 TList* fOutput; //! QA histos
62 TH1F* fHistNEvents; //! histo with N of events
63 TH1F* fHistAllPMod; //! histo of tracks crossing SDD modules
64 TH1F* fHistGoodPMod; //! histo of tracks with good point in SDD module
65 TH1F* fHistBadRegMod; //! histo of tracks crossing bad region of SDD mod.
66 TH1F* fHistMissPMod; //! histo of tracks with missing point in SDD mod.
67 TH1F* fHistSkippedMod; //! histo of tracks skipping an SDD module
68 TH1F* fHistOutAccMod; //! histo of tracks out of accept. in SDD module
69 TH1F* fHistNoRefitMod; //! histo of points rejected in refit vs. SDD mod.
70 TH2F* fHistdEdxL3VsP; //! 2D histo of dE/dx vs. momentum -- layer 3
71 TH2F* fHistdEdxL4VsP; //! 2D histo of dE/dx vs. momentum -- layer 4
72 TH2F* fHistdEdxVsMod; //! 2D histo of dE/dx vs. module number
73 TH1F* fRecPMod; //! histo with module occupancy (RecP)
74 TH1F* fTrackPMod; //! histo with module occupancy (TrP)
75 TH1F* fGoodAnMod; //! histo good anodes per module
76 TH1F* fRecPLadLay3; //! histo with ladder occupancy on layer3 (RecP)
77 TH1F* fRecPLadLay4; //! histo with ladder occupancy on layer4 (RecP)
78 TH1F* fTrackPLadLay3; //! histo with ladder occupancy on layer3 (TrP)
79 TH1F* fTrackPLadLay4; //! histo with ladder occupancy on layer4 (TrP)
80 TH1F* fGoodAnLadLay3; //! histo good anodes per ladder on layer3
81 TH1F* fGoodAnLadLay4; //! histo good anodes per ladder on layer4
82 TH1F* fDriftTimeRP; //! histo with drift time distribution (RecP)
83 TH1F* fDriftTimeTPAll; //! histo with drift time distribution (TrP)
84 TH1F* fDriftTimeTPNoExtra; //! histo with drift time distribution (TrP)
85 TH1F* fDriftTimeTPExtra;//! histo with drift time distribution (TrP)
86 TH1F* fSignalTime[8]; //! histos of dE/dx in time windows
87 AliESDEvent *fESD; // ESD object
88 AliESDfriend *fESDfriend; // ESD friend object
89 AliITSresponseSDD* fResp; // ResponseSDD object
90 Bool_t fUseITSsaTracks; // Flag for using standalone ITS tracs
91 Int_t fMinITSpts; // Minimum number of ITS points per track
92 Int_t fMinTPCpts; // Minimum number of TPC points per track
93 Float_t fMinPfordEdx; // Minimum momentum for dE/dx
94 Bool_t fOnlyCINT1BTrig; // Flag for using all events or only intections
95 Bool_t fInitialised; // True if initialised
96 Bool_t fExcludeBadMod; // Flag to reject bad modules
98 ClassDef(AliAnalysisTaskSDDRP,3);