1 /**************************************************************************
2 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * Author: The ALICE Off-line Project. *
5 * Contributors are mentioned in the code where appropriate. *
7 * Permission to use, copy, modify and distribute this software and its *
8 * documentation strictly for non-commercial purposes is hereby granted *
9 * without fee, provided that the above copyright notice appears in all *
10 * copies and that both the copyright notice and this permission notice *
11 * appear in the supporting documentation. The authors make no claims *
12 * about the suitability of this software for any purpose. It is *
13 * provided "as is" without express or implied warranty. *
14 **************************************************************************/
16 // Flow task class for the ALICE HFE group
19 #ifndef ALIANALYSISTASKHFEQA_H
20 #define ALIANALYSISTASKHFEQA_H
23 #ifndef ALIANALYSISTASKSE_H
24 #include "AliAnalysisTaskSE.h"
39 class AliHFEpidQAmanager;
45 class AliAnalysisTaskHFEQA: public AliAnalysisTaskSE {
55 AliAnalysisTaskHFEQA();
56 AliAnalysisTaskHFEQA(const char *name);
57 AliAnalysisTaskHFEQA(const AliAnalysisTaskHFEQA &ref);
58 AliAnalysisTaskHFEQA& operator=(const AliAnalysisTaskHFEQA &ref);
59 virtual void Copy(TObject &o) const;
60 virtual ~AliAnalysisTaskHFEQA();
62 virtual void UserExec(Option_t */*option*/);
63 virtual void UserCreateOutputObjects();
65 void SetDoTPConly(Bool_t tpconlydo) { fTPConlydo = tpconlydo; };
66 void SetDoTRDonly(Bool_t trdonlydo) { fTRDonlydo = trdonlydo; };
67 void SetDoTOFTPC(Bool_t toftpcdo) { fTOFTPCdo = toftpcdo; };
68 void SetDoTPCTRD(Bool_t tpctrddo) { fTPCTRDdo = tpctrddo; };
69 void SetDoTPCEMCal(Bool_t tpcemcaldo) { fTPCEMCaldo = tpcemcaldo; };
70 void SetAODAnalysis(Bool_t aodAnalysis) { fAODAnalysis = aodAnalysis; };
71 void SetCentralityEstimator(const char *estimator) { fCentralityEstimator = estimator; }
73 fCollisionSystem.SetBitNumber(kpPb, kFALSE);
74 fCollisionSystem.SetBitNumber(kPbPb, kFALSE);
75 fCollisionSystem.SetBitNumber(kpp, kTRUE);
77 void SetpPbAnalysis() {
78 fCollisionSystem.SetBitNumber(kpp, kFALSE);
79 fCollisionSystem.SetBitNumber(kPbPb, kFALSE);
80 fCollisionSystem.SetBitNumber(kpPb, kTRUE);
82 void SetPbPbAnalysis() {
83 fCollisionSystem.SetBitNumber(kpp, kFALSE);
84 fCollisionSystem.SetBitNumber(kpPb, kFALSE);
85 fCollisionSystem.SetBitNumber(kPbPb, kTRUE);
87 Bool_t Ispp() const { return fCollisionSystem.TestBitNumber(kpp); }
88 Bool_t IsPbPb() const { return fCollisionSystem.TestBitNumber(kPbPb); }
89 Bool_t IspPb() const { return fCollisionSystem.TestBitNumber(kpPb); }
91 AliHFEpid *GetPIDTPConly() const { return fPIDTPConly; }
92 AliHFEpid *GetPIDTRDonly() const { return fPIDTRDonly; }
93 AliHFEpid *GetPIDTOFTPC() const { return fPIDTOFTPC; }
94 AliHFEpid *GetPIDTPCTRD() const { return fPIDTPCTRD; }
95 AliHFEpid *GetPIDTPCEMCal() const { return fPIDTPCEMCal; }
96 AliHFEpidQAmanager *GetPIDQAManagerTRDonly() const { return fPIDqaTRDonly; }
97 AliHFEpidQAmanager *GetPIDQAManagerTOFTPC() const { return fPIDqaTOFTPC; }
98 AliHFEpidQAmanager *GetPIDQAManagerTPCTRD() const { return fPIDqaTPCTRD; }
99 AliHFEpidQAmanager *GetPIDQAManagerTPCEMCal() const { return fPIDqaTPCEMCal; }
102 void SetHFECuts(AliHFEcuts * const cuts) { fHFECuts = cuts; };
105 TList *fListHist; //! TH list
106 Bool_t fAODAnalysis; // AOD analysis
107 AliAODMCHeader *fAODMCHeader; // ! MC info AOD
108 TClonesArray *fAODArrayMCInfo; // ! MC info particle AOD
111 AliHFEcuts *fHFECuts; // HFE cuts
112 AliHFEpid *fPIDTPConly; // PID cuts
113 AliHFEpid *fPIDTRDonly; // PID cuts
114 AliHFEpid *fPIDTOFTPC; // PID cuts TOF-TPC only
115 AliHFEpid *fPIDTPCTRD; // PID cuts TPC-TRD
116 AliHFEpid *fPIDTPCEMCal; // PID cuts TPC-EMCal
117 AliHFEpidQAmanager *fPIDqaTRDonly; // QA Manager TOF TPC
118 AliHFEpidQAmanager *fPIDqaTOFTPC; // QA Manager TOF TPC
119 AliHFEpidQAmanager *fPIDqaTPCTRD; // QA Manager TPC TRD
120 AliHFEpidQAmanager *fPIDqaTPCEMCal; // QA Manager TPC EMCal
121 TString fCentralityEstimator; // Centrality Estimator
122 TBits fCollisionSystem; // Collision System;
125 TH1F *fNbEvent; // Number of events
126 TH1F *fTPConly; // TPC only electron yield
127 TH1F *fTOFTPC; // TOF TPC electron yield
128 TH1F *fTPCTRD; // TPC TRD electron yield
129 TH1F *fTPCEMCal; // TPC EMCal electron yield
132 Bool_t fTPConlydo; // Do TPC only PID
133 Bool_t fTRDonlydo; // Do TRD only PID
134 Bool_t fTOFTPCdo; // Do TOF TPC
135 Bool_t fTPCTRDdo; // Do TPC TRD
136 Bool_t fTPCEMCaldo; // Do TPC EMCal
139 // Debuging Cuts step by step all centrality together: pt, step (6)
140 //THnSparseF *fTrackingCuts; //! Tracking Cuts
144 ClassDef(AliAnalysisTaskHFEQA, 3); // analysisclass