]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG3/vertexingHF/AliAnalysisTaskSEHFQA.h
Flow afterburner for D mesons (Giacomo)
[u/mrichter/AliRoot.git] / PWG3 / vertexingHF / AliAnalysisTaskSEHFQA.h
CommitLineData
0dbb51a0 1#ifndef ALIANALYSISTASKSEHFQUALITYASSURANCE_H
2#define ALIANALYSISTASKSEHFQUALITYASSURANCE_H
3
4/* Copyright(c) 1998-2009, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
6
27de2dfb 7/* $Id$ */
8
0dbb51a0 9//*************************************************************************
10// Class AliAnalysisTaskSEHFQA
11// AliAnalysisTaskSE for HF quality assurance
12// Authors: C.Bianchin, chiara.bianchin@pd.infn.it
13//*************************************************************************
14
15#include <TROOT.h>
16#include <TSystem.h>
17
18#include "AliAnalysisTaskSE.h"
19
20class AliRDHFCuts;
21class TH1F;
22
23class AliAnalysisTaskSEHFQA : public AliAnalysisTaskSE
24{
25
26 public:
27
28 enum DecChannel {kDplustoKpipi,kD0toKpi,kDstartoKpipi,kDstoKKpi,kD0toKpipipi,kLambdactopKpi};
29
30 AliAnalysisTaskSEHFQA();
31 AliAnalysisTaskSEHFQA(const char *name, DecChannel ch, AliRDHFCuts* cuts);
32 virtual ~AliAnalysisTaskSEHFQA();
33
34 // Implementation of interface methods
35 virtual void UserCreateOutputObjects();
36 virtual void Init();
37 virtual void LocalInit() {Init();}
38 virtual void UserExec(Option_t *option);
39 virtual void Terminate(Option_t *option);
40
41 //setters
a4ef4383 42 void SetReadMC(Bool_t mcflag){fReadMC=mcflag;}
19222b31 43 void SetSimpleMode(Bool_t flag){fSimpleMode=flag;}
5fc4893f 44 void SetTrackOn(Bool_t trackon=kTRUE){fOnOff[0]=trackon;}
45 void SetPIDOn(Bool_t pidon=kTRUE){fOnOff[1]=pidon;}
46 void SetCentralityOn(Bool_t centron=kTRUE){fOnOff[2]=centron;}
818c1271 47 void SetEvSelectionOn(Bool_t evselon=kTRUE){fOnOff[3]=evselon;}
0dbb51a0 48
49 //getters
50 AliRDHFCuts* GetCutObject() const {return fCuts;}
51 DecChannel GetDecayChannel()const {return fDecayChannel;}
5fc4893f 52 Bool_t GetTrackStatus() const {return fOnOff[0];}
53 Bool_t GetPIDStatus() const {return fOnOff[1];}
54 Bool_t GetCentralityStatus() const {return fOnOff[2];}
818c1271 55 Bool_t GetEvSelStatus() const {return fOnOff[3];}
0dbb51a0 56
57 private:
58 AliAnalysisTaskSEHFQA(const AliAnalysisTaskSEHFQA &source);
59 AliAnalysisTaskSEHFQA operator=(const AliAnalysisTaskSEHFQA &source);
60
61 TH1F* fNEntries; //! histogram with number of events on output slot 1
62 TList* fOutputPID; //! list sent on output slot 2
63 TList* fOutputTrack; //! list sent on output slot 3
a4ef4383 64 TList* fOutputCounters; //! list sent on output slot 5
65 TList* fOutputCheckCentrality; //! list sent on output slot 6
818c1271 66 TList* fOutputEvSelection; //! list sent on output slot 7
0dbb51a0 67 DecChannel fDecayChannel; //identify the decay channel
68 AliRDHFCuts* fCuts; // object containing cuts
a4ef4383 69 AliRDHFCuts::ECentrality fEstimator; //2nd estimator for centrality
70 Bool_t fReadMC; // flag to read MC
5fc4893f 71 Bool_t fSimpleMode; // if true, don't do candidates (much faster in PbPb)
818c1271 72 Bool_t fOnOff[4]; // on-off the QA on tracks (0), PID (1), centrality (2), event selection -- default is {kTRUE,kTRUE,kTRUE,kTRUE}
73 ClassDef(AliAnalysisTaskSEHFQA,6); //AnalysisTaskSE for the quality assurance of HF in hadrons
0dbb51a0 74
75};
76
77#endif
5fc4893f 78