363d47b4690cb57f7f341bfb7caf27b7fcc1707b
[u/mrichter/AliRoot.git] / PHOS / macros / pi0Calib / AliAnalysisTaskPi0CalibSelection.h
1 #ifndef ALIANALYSISTASKPI0CALIBSELECTION_H
2 #define ALIANALYSISTASKPI0CALIBSELECTION_H
3
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               */
6
7 //---------------------------------------------------------------------------// 
8 // Fill histograms with two-cluster invariant mass                           //
9 // using calibration coefficients of the previous iteration.                 //
10 //---------------------------------------------------------------------------//
11
12
13 #include "AliAnalysisTaskSE.h"
14 #include "AliPHOSGeometry.h"
15 #include "AliPHOSCalibData.h"
16 #include "AliESDCaloCluster.h"
17 #include "AliESDCaloCells.h"
18 #include "TH1.h"
19
20 class AliAnalysisTaskPi0CalibSelection : public AliAnalysisTaskSE
21 {
22 public:
23
24   AliAnalysisTaskPi0CalibSelection();
25   AliAnalysisTaskPi0CalibSelection(const char* name);
26   virtual ~AliAnalysisTaskPi0CalibSelection();
27
28   // Implementation of interface methods
29   virtual void UserCreateOutputObjects();
30   virtual void UserExec(Option_t * opt);
31   
32   void SetClusterMinEnergy(Float_t emin) {fEmin=emin;}
33   void SetLogWeight(Float_t weight) {fLogWeight=weight;}
34   void SetCalibCorrections(AliPHOSCalibData* cdata);
35   
36 private:
37
38   AliAnalysisTaskPi0CalibSelection(const AliAnalysisTaskPi0CalibSelection&); 
39   AliAnalysisTaskPi0CalibSelection& operator=(const AliAnalysisTaskPi0CalibSelection&); 
40
41   void MaxEnergyCellPos(AliESDCaloCells *cells, AliESDCaloCluster* clu, Int_t& maxId);
42
43 private:
44
45   TList* fOutputContainer;
46   TH1F*  fHmpi0[5][64][56];// two-cluster inv. mass assigned to each cell.
47   
48   AliPHOSGeometry * fPhosGeo;   // PHOS geometry
49   AliPHOSCalibData* fCalibData; // corrections to CC from the previous iteration
50
51   TH1F* fHmgg; //two-cluster inv.mass
52   Float_t fEmin; // min. cluster energy
53   Float_t fLogWeight; // log weight used in cluster recalibration
54
55   ClassDef(AliAnalysisTaskPi0CalibSelection,1);
56
57 };
58
59 #endif