229b5c1815b7326ce0c5b8b7e5f1b1aeb839f4fd
[u/mrichter/AliRoot.git] / PWGGA / EMCALTasks / AliAnalysisTaskTrgContam.h
1 #ifndef AliAnalysisTaskTrgContam_cxx\r
2 #define AliAnalysisTaskTrgContam_cxx\r
3 \r
4 class TH1;\r
5 class TH2;\r
6 class TObjArray;\r
7 class AliESDEvent;\r
8 class AliESDtrack;\r
9 class AliESDtrackCuts;\r
10 class AliVCluster;\r
11 \r
12 #include "AliAnalysisTaskSE.h"\r
13 \r
14 class AliAnalysisTaskTrgContam : public AliAnalysisTaskSE {\r
15  public:\r
16   AliAnalysisTaskTrgContam() : \r
17   AliAnalysisTaskSE(), \r
18   \r
19     fCaloClusters(0),\r
20     fEMCalCells(0),\r
21 \r
22     fGeoName("EMCAL_COMPLETEV1"),\r
23     fPeriod("LHC11c"),\r
24     fIsTrain(0),\r
25     fTrigThresh(4.8),\r
26     fExoticCut(0.97),\r
27 \r
28     fGeom(0x0),\r
29   \r
30     fESD(0),\r
31   \r
32     fOutputList(0),\r
33 \r
34     fEvtSel(0),\r
35 \r
36     fClusEt(0),\r
37     fClusEtTM(0),\r
38     fClusEtLead(0),\r
39     fClusEtSubLead(0),\r
40     fClusEtLeadTM(0),\r
41     fClusEtSubLeadTM(0),\r
42     fClusEtExotic(0), \r
43     fClusEtExoticTM(0),\r
44     fClusEtSingleExotic(0),\r
45     fCellEnergy(0),\r
46     fM02Et(0),\r
47     fM02EtTM(0),\r
48     fM02EtExot(0),\r
49     fM02EtExotTM(0)\r
50 \r
51     \r
52   \r
53   \r
54   {}\r
55   AliAnalysisTaskTrgContam(const char *name);\r
56   virtual ~AliAnalysisTaskTrgContam() {}\r
57 \r
58   void   UserCreateOutputObjects();\r
59   void   UserExec(Option_t *option);\r
60   void   Terminate(Option_t *);\r
61 \r
62   void         SetGeoName(const char *n)              { fGeoName            = n;       }\r
63   void         SetPeriod(const char *n)               { fPeriod             = n;       }\r
64   void         SetTrainMode(Bool_t t)                 { fIsTrain            = t;       }\r
65   void         SetTrigThresh(Double_t t)              { fTrigThresh         = t;       }\r
66   void         SetExotCut(Double_t c)                 { fExoticCut          = c;       }\r
67   void         FillClusHists();\r
68   Double_t     GetCrossEnergy(const AliVCluster *cluster, Short_t &idmax);\r
69   Double_t     GetMaxCellEnergy(const AliVCluster *cluster, Short_t &id) const; \r
70 \r
71 \r
72 \r
73 \r
74   \r
75  protected:\r
76   TRefArray             *fCaloClusters;          //!pointer to EMCal clusters\r
77   AliESDCaloCells       *fEMCalCells;            //!pointer to EMCal cells\r
78   AliEMCALGeometry      *fGeom;                   // geometry utils\r
79   TString               fGeoName;                // geometry name (def = EMCAL_FIRSTYEARV1)\r
80   TString               fPeriod;                 // string to the LHC period\r
81   Bool_t                fIsTrain;                //variable to set train mode\r
82   Double_t              fTrigThresh;             //variable to set the trigger threshold\r
83   Double_t              fExoticCut;              //variable to set the cut on exotic clusters\r
84   \r
85  private:\r
86   AliESDEvent *fESD;      //! ESD object\r
87 \r
88 \r
89   \r
90   TList       *fOutputList; //! Output list\r
91   //histograms for events with 1+ track pt>1\r
92   \r
93   TH1F        *fEvtSel;                  //!evt selection counter: 0=all trg, 1=pv cut \r
94 \r
95   TH1F        *fClusEt;                  //!cluster Et spectrum\r
96   TH1F        *fClusEtTM;                //!cluster(matched to a track) Et spectrum\r
97   TH1F        *fClusEtLead;              //!leading trigger cluster Et\r
98   TH1F        *fClusEtSubLead;           //!sub-leading trigger cluster Et\r
99   TH1F        *fClusEtLeadTM;            //!leading trigger cluster (TM) Et\r
100   TH1F        *fClusEtSubLeadTM;         //!subleading trigger cluster (TM) Et\r
101   TH1F        *fClusEtExotic;            //!exotic trigger clusters Et\r
102   TH1F        *fClusEtExoticTM;          //!exotic trigger clusters (TM) Et\r
103   TH1F        *fClusEtSingleExotic;      //!exotic trigger only clusters Et \r
104   TH1F        *fCellEnergy;              //!cell energy spectrum (all)\r
105   \r
106   TH2F        *fM02Et;                   //!M02xEt for trigger clusters\r
107   TH2F        *fM02EtTM;                 //!M02xEt for trigger clusters with track matched\r
108   TH2F        *fM02EtExot;               //!M02xEt for trigger clusters of exotic\r
109   TH2F        *fM02EtExotTM;             //!M02xEt for trigger TM clusters of exotic\r
110 \r
111    \r
112   AliAnalysisTaskTrgContam(const AliAnalysisTaskTrgContam&); // not implemented\r
113   AliAnalysisTaskTrgContam& operator=(const AliAnalysisTaskTrgContam&); // not implemented\r
114   \r
115   ClassDef(AliAnalysisTaskTrgContam, 1); // example of analysis\r
116 };\r
117 \r
118 #endif\r