making the container name parameterized
[u/mrichter/AliRoot.git] / PWG / CaloTrackCorrBase / AliAnalysisTaskCounter.h
CommitLineData
dd094cf8 1#ifndef ALIANALYSISTASKCOUNTER_H
2#define ALIANALYSISTASKCOUNTER_H
3
4//_________________________________________________________________________
5//
6// Count events with different selections
7//
8// Author: Gustavo Conesa Balbastre (LPSC)
9//
10//_________________________________________________________________________
11
12class TH1F;
13class TList;
14class AliESDtrackCuts;
15class AliTriggerAnalysis;
16
17#include "AliAnalysisTaskSE.h"
18
19class AliAnalysisTaskCounter : public AliAnalysisTaskSE {
20
21 public:
22 AliAnalysisTaskCounter();
23 AliAnalysisTaskCounter(const char *name);
24 virtual ~AliAnalysisTaskCounter() ;
25
dd094cf8 26 virtual void UserCreateOutputObjects();
27 virtual void UserExec(Option_t *option);
28 virtual void FinishTaskOutput();
29
c5693f62 30 void SetTrackMultiplicityEtaCut(Float_t eta) { fTrackMultEtaCut = eta ; }
31 void SetZVertexCut(Float_t vcut) { fZVertexCut = vcut ; }
dd094cf8 32
c5693f62 33 void SwitchOnCaloFilterPatch() { fCaloFilterPatch = kTRUE ; }
34 void SwitchOffCaloFilterPatch() { fCaloFilterPatch = kFALSE ; }
35 Bool_t IsCaloFilterPatchOn() const { return fCaloFilterPatch ; }
cd2e4ce6 36
c5693f62 37 void AcceptFastCluster() { fAcceptFastCluster = kTRUE ; }
38 void RejectFastCluster() { fAcceptFastCluster = kFALSE ; }
39 Bool_t IsFastClusterAccepted() const { return fAcceptFastCluster ; }
dd094cf8 40
c5693f62 41 Bool_t CheckForPrimaryVertex() ;
dd094cf8 42
43 private:
cd2e4ce6 44 Bool_t fAcceptFastCluster; // Accept events from fast cluster, exclude thiese events for LHC11a
45 Float_t fZVertexCut; // Z vertex cut
46 Float_t fTrackMultEtaCut; // Track multiplicity eta cut
47 Bool_t fCaloFilterPatch; // CaloFilter patch
48 TList* fOutputContainer; //! Histogram container
49 AliESDtrackCuts * fESDtrackCuts; // Track cut
50 AliTriggerAnalysis * fTriggerAnalysis; // Trigger algorithm
dd094cf8 51
52 //Histograms
53 TH1I * fhNEvents; //! Events that delivers the analysis frame after different assumptions
54 TH1F * fhXVertex; //! X Vertex distribution
55 TH1F * fhYVertex; //! Y Vertex distribution
56 TH1F * fhZVertex; //! Z Vertex distribution
57 TH1F * fhXGoodVertex; //! X Vertex good distribution
58 TH1F * fhYGoodVertex; //! Y Vertex good distribution
59 TH1F * fhZGoodVertex; //! Z Vertex good distribution
e19ca838 60 TH1F * fhCentrality; //! centrality
0792da48 61 TH1F * fhEventPlaneAngle; //! Histogram with Event plane angle
62
d2655d46 63 AliAnalysisTaskCounter( const AliAnalysisTaskCounter&); // not implemented
c5693f62 64 AliAnalysisTaskCounter& operator=(const AliAnalysisTaskCounter&); // not implemented
65
0792da48 66 ClassDef(AliAnalysisTaskCounter, 3);
dd094cf8 67
68};
69
70#endif //ALIANALYSISTASKCOUNTER_H