cosmetics
[u/mrichter/AliRoot.git] / PWGGA / EMCALTasks / AliAnalysisTaskTrgContam.h
1 #ifndef AliAnalysisTaskTrgContam_h\r
2 #define AliAnalysisTaskTrgContam_h\r
3 \r
4 // $Id$\r
5 \r
6 class TH1;\r
7 class TH2;\r
8 class TObjArray;\r
9 class AliESDEvent;\r
10 class AliESDtrack;\r
11 class AliESDtrackCuts;\r
12 class AliVCluster;\r
13 \r
14 #include "AliAnalysisTaskSE.h"\r
15 \r
16 class AliAnalysisTaskTrgContam : public AliAnalysisTaskSE {\r
17  public:\r
18   AliAnalysisTaskTrgContam(); \r
19   AliAnalysisTaskTrgContam(const char *name);\r
20   virtual ~AliAnalysisTaskTrgContam() {}\r
21 \r
22   void         UserCreateOutputObjects();\r
23   void         UserExec(Option_t *option);\r
24   void         Terminate(Option_t *);\r
25 \r
26   Double_t     GetCrossEnergy(const AliVCluster *cluster, Short_t &idmax);\r
27   Double_t     GetMaxCellEnergy(const AliVCluster *cluster, Short_t &id) const; \r
28   void         FillClusHists();\r
29   void         SetExotCut(Double_t c)                 { fExoticCut          = c;       }\r
30   void         SetGeoName(const char *n)              { fGeoName            = n;       }\r
31   void         SetPeriod(const char *n)               { fPeriod             = n;       }\r
32   void         SetTrainMode(Bool_t t)                 { fIsTrain            = t;       }\r
33   void         SetTrigThresh(Double_t t)              { fTrigThresh         = t;       }\r
34   \r
35  protected:\r
36   TRefArray            *fCaloClusters;           //!pointer to EMCal clusters\r
37   AliESDCaloCells      *fEMCalCells;             //!pointer to EMCal cells\r
38   AliEMCALGeometry     *fGeom;                   // geometry utils\r
39   TString               fGeoName;                // geometry name (def = EMCAL_FIRSTYEARV1)\r
40   TString               fPeriod;                 // string to the LHC period\r
41   Bool_t                fIsTrain;                //variable to set train mode\r
42   Double_t              fTrigThresh;             //variable to set the trigger threshold\r
43   Double_t              fExoticCut;              //variable to set the cut on exotic clusters\r
44   \r
45  private:\r
46   AliESDEvent *fESD;      //! ESD object\r
47   \r
48   TList       *fOutputList; //! Output list\r
49   //histograms for events with 1+ track pt>1\r
50   TH1F        *fEvtSel;                  //!evt selection counter: 0=all trg, 1=pv cut \r
51   TH1F        *fClusEt;                  //!cluster Et spectrum\r
52   TH1F        *fClusEtTM;                //!cluster(matched to a track) Et spectrum\r
53   TH1F        *fClusEtLead;              //!leading trigger cluster Et\r
54   TH1F        *fClusEtSubLead;           //!sub-leading trigger cluster Et\r
55   TH1F        *fClusEtLeadTM;            //!leading trigger cluster (TM) Et\r
56   TH1F        *fClusEtSubLeadTM;         //!subleading trigger cluster (TM) Et\r
57   TH1F        *fClusEtExotic;            //!exotic trigger clusters Et\r
58   TH1F        *fClusEtExoticTM;          //!exotic trigger clusters (TM) Et\r
59   TH1F        *fClusEtSingleExotic;      //!exotic trigger only clusters Et \r
60   TH1F        *fCellEnergy;              //!cell energy spectrum (all)\r
61   TH2F        *fM02Et;                   //!M02xEt for trigger clusters\r
62   TH2F        *fM02EtTM;                 //!M02xEt for trigger clusters with track matched\r
63   TH2F        *fM02EtExot;               //!M02xEt for trigger clusters of exotic\r
64   TH2F        *fM02EtExotTM;             //!M02xEt for trigger TM clusters of exotic\r
65    \r
66   AliAnalysisTaskTrgContam(const AliAnalysisTaskTrgContam&); // not implemented\r
67   AliAnalysisTaskTrgContam& operator=(const AliAnalysisTaskTrgContam&); // not implemented\r
68   \r
69   ClassDef(AliAnalysisTaskTrgContam, 1); // Trigger contamination class\r
70 };\r
71 #endif\r