]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG1/ITS/AliAnalysisTaskSDDRP.h
Updates in D+ histos and ntuples (Renu, Francesco, Elena)
[u/mrichter/AliRoot.git] / PWG1 / ITS / AliAnalysisTaskSDDRP.h
1 #ifndef ALIANALYSISTASKSDDRP
2 #define ALIANALYSISTASKSDDRP
3
4 /* Copyright(c) 1998-2010, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               */
6
7 //*************************************************************************
8 // Class AliAnalysiTaskSDDRP
9 // AliAnalysisTaskSE to extract from ESD + ESDfreinds + ITS rec points
10 // performance plots for SDD detector
11 //
12 // Author: F. Prino, prino@to.infn.it
13 //*************************************************************************
14
15 class TList;
16 class TH1F;
17 class TH2F;
18 class TTree;
19 class TString;
20 class AliESDEvent;
21 class AliESDfriend;
22 class AliITSresponseSDD;
23
24 #include "AliAnalysisTaskSE.h"
25
26 class AliAnalysisTaskSDDRP : public AliAnalysisTaskSE {
27
28  public:
29   
30   AliAnalysisTaskSDDRP();
31   virtual ~AliAnalysisTaskSDDRP();
32   virtual void   UserExec(Option_t *option);
33   virtual void   UserCreateOutputObjects();
34   virtual void   Terminate(Option_t *option);
35
36   void SetUseITSstandaloneTracks(Bool_t use){
37     fUseITSsaTracks=use;
38   }
39   void SetMinITSPoints(Int_t minp=3){
40     fMinITSpts=minp;
41   }
42   void SetMinTPCPoints(Int_t minp=70){
43     fMinTPCpts=minp;
44   }
45   void SetUseOnlyCINT1BTriggers(Bool_t use=kTRUE){
46     fOnlyCINT1BTrig=use;
47   }
48   void SetMinPfordEdx(Float_t minp=0.5){
49     fMinPfordEdx=minp;
50   }
51   void SetExcludeBadModules(Bool_t opt=kTRUE){
52     fExcludeBadMod=opt;
53   }
54   Bool_t CheckModule(Int_t lay, Int_t lad, Int_t det) const;
55   
56
57  private:
58   AliAnalysisTaskSDDRP(const AliAnalysisTaskSDDRP &source);
59   AliAnalysisTaskSDDRP& operator=(const AliAnalysisTaskSDDRP &source);
60   
61   TList*  fOutput;          //! QA histos
62   TH1F*   fHistNEvents;     //! histo with N of events  
63   TH1F*   fHistCluInLay;    //! histo with number of tracks per layer
64   TH1F*   fHistAllPMod;     //! histo of tracks crossing SDD modules
65   TH1F*   fHistGoodPMod;    //! histo of tracks with good point in SDD module
66   TH1F*   fHistBadRegMod;   //! histo of tracks crossing bad region of SDD mod.
67   TH1F*   fHistMissPMod;    //! histo of tracks with missing point in SDD mod.
68   TH1F*   fHistSkippedMod;  //! histo of tracks skipping an SDD module
69   TH1F*   fHistOutAccMod;   //! histo of tracks out of accept. in SDD module
70   TH1F*   fHistNoRefitMod;  //! histo of points rejected in refit vs. SDD mod.
71
72   TH1F*   fHistAllPXloc;    //! histo of xlocal for track hit points
73   TH1F*   fHistGoodPXloc;   //! histo of xlocal for track hit points + good clu
74   TH1F*   fHistBadRegXloc;  //! histo of xlocal for track hit points + bad reg.
75   TH1F*   fHistMissPXloc;   //! histo of xlocal for track hit points + miss clu
76   TH1F*   fHistAllPZloc;    //! histo of zlocal for track hit points
77   TH1F*   fHistGoodPZloc;   //! histo of zlocal for track hit points + good clu
78   TH1F*   fHistBadRegZloc;  //! histo of zlocal for track hit points + bad reg.
79   TH1F*   fHistMissPZloc;   //! histo of zlocal for track hit points + miss clu
80
81   TH2F*   fHistdEdxL3VsP;   //! 2D histo of dE/dx vs. momentum -- layer 3
82   TH2F*   fHistdEdxL4VsP;   //! 2D histo of dE/dx vs. momentum -- layer 4
83   TH2F*   fHistdEdxVsMod;   //! 2D histo of dE/dx vs. module number
84   TH1F*   fRecPMod;         //! histo with module occupancy (RecP) 
85   TH1F*   fTrackPMod;       //! histo with module occupancy (TrP)
86   TH1F*   fGoodAnMod;       //! histo good anodes per module 
87   TH1F*   fRecPLadLay3;     //! histo with ladder occupancy on layer3 (RecP) 
88   TH1F*   fRecPLadLay4;     //! histo with ladder occupancy on layer4 (RecP)
89   TH1F*   fTrackPLadLay3;   //! histo with ladder occupancy on layer3 (TrP)
90   TH1F*   fTrackPLadLay4;   //! histo with ladder occupancy on layer4 (TrP)
91   TH1F*   fGoodAnLadLay3;   //! histo good anodes per ladder on layer3 
92   TH1F*   fGoodAnLadLay4;   //! histo good anodes per ladder on layer4 
93   TH1F*   fDriftTimeRP;     //! histo with drift time distribution (RecP)
94   TH1F*   fDriftTimeTPAll;  //! histo with drift time distribution (TrP)
95   TH1F*   fDriftTimeTPNoExtra; //! histo with drift time distribution (TrP)
96   TH1F*   fDriftTimeTPExtra;//! histo with drift time distribution (TrP)
97   TH1F*   fSignalTime[8];   //! histos of dE/dx in time windows
98   TH2F*   fCluSizAnVsTime;  //! Histo with anode cluster size vs. time
99   TH2F*   fCluSizTbVsTime;  //! Histo with time-bin cluster size vs. time
100   AliITSresponseSDD* fResp; // ResponseSDD object
101   Bool_t  fUseITSsaTracks;   // Flag for using standalone ITS tracs
102   Int_t   fMinITSpts;       // Minimum number of ITS points per track
103   Int_t   fMinTPCpts;       // Minimum number of TPC points per track
104   Float_t fMinPfordEdx;     // Minimum momentum for dE/dx
105   Bool_t  fOnlyCINT1BTrig;  // Flag for using all events or only intections
106   Bool_t  fExcludeBadMod;   // Flag to reject bad modules
107  
108   ClassDef(AliAnalysisTaskSDDRP,4);
109 };
110
111
112 #endif