]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGLF/totEt/AliAnalysisEtSelectorPhos.h
Moving some functionality to selection base class.
[u/mrichter/AliRoot.git] / PWGLF / totEt / AliAnalysisEtSelectorPhos.h
1 #ifndef ALIANALYSISETSELECTORPHOS_H
2 #define ALIANALYSISETSELECTORPHOS_H
3 //_________________________________________________________________________
4 //  Utility Class for transverse energy studies
5 //  Selector Base class for PHOS
6 //  - 
7 //
8 //*-- Authors: Oystein Djuvsland (Bergen)
9 //_________________________________________________________________________
10 #include "AliAnalysisEtSelector.h"
11
12 class TH2I;
13 class TParticle;
14 class AliPHOSGeometry;
15 class AliESDEvent;
16
17 class AliAnalysisEtSelectorPhos : public AliAnalysisEtSelector
18 {
19
20 public:
21
22     AliAnalysisEtSelectorPhos(AliAnalysisEtCuts *cuts);
23     virtual ~AliAnalysisEtSelectorPhos();
24     
25     virtual TRefArray* GetClusters();
26     virtual Bool_t PassMinEnergyCut(const AliESDCaloCluster& cluster) const;
27     virtual Bool_t PassMinEnergyCut(const TParticle& part) const;
28     virtual Bool_t PassDistanceToBadChannelCut(const AliESDCaloCluster& cluster) const;
29     virtual Bool_t PassTrackMatchingCut(const AliESDCaloCluster& cluster) const;
30     virtual Bool_t CutGeometricalAcceptance(const TParticle& part) const;    
31     virtual Bool_t CutGeometricalAcceptance(const AliVTrack& part) const;    
32     virtual void Init() {}
33     virtual Int_t Init(const AliESDEvent *ev);
34
35     virtual Bool_t IsDetectorCluster(const AliESDCaloCluster& cluster) const {return cluster.IsPHOS();}
36     
37 private:
38
39
40     int LoadGeometry(); // load geometry
41     int LoadBadMaps(); // load bad maps
42     
43     AliPHOSGeometry *fGeoUtils; // geo utils
44     
45     TH2I *fBadMapM2; // Bad map
46     TH2I *fBadMapM3; // Bad map
47     TH2I *fBadMapM4; // Bad map
48
49     Bool_t fMatrixInitialized; // matrix initialized
50     
51     AliAnalysisEtSelectorPhos();
52     AliAnalysisEtSelectorPhos(const AliAnalysisEtSelectorPhos& other); // Prohibited
53     AliAnalysisEtSelectorPhos& operator=(const AliAnalysisEtSelectorPhos& other); // Prohibited
54     bool operator==(const AliAnalysisEtSelectorPhos& other) const; // Prohibited
55     
56     ClassDef(AliAnalysisEtSelectorPhos, 1);
57 };
58
59 #endif // ALIANALYSISETSELECTORPHOS_H