]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG0/multiplicity/AliMultiplicityTask.h
adding trigger as flag
[u/mrichter/AliRoot.git] / PWG0 / multiplicity / AliMultiplicityTask.h
CommitLineData
a9017e49 1/* $Id$ */
2
3#ifndef AliMultiplicityTask_H
4#define AliMultiplicityTask_H
5
6#include "AliAnalysisTask.h"
745d6088 7
a9017e49 8#include <TString.h>
745d6088 9#include "AliPWG0Helper.h"
a9017e49 10
11class AliESDtrackCuts;
12class AliMultiplicityCorrection;
13class TNtuple;
14class AliCorrection;
15class TH1;
16class AliESDEvent;
17
18class AliMultiplicityTask : public AliAnalysisTask {
19 public:
20 AliMultiplicityTask(const char* opt = "");
21 virtual ~AliMultiplicityTask();
22
23 virtual void ConnectInputData(Option_t *);
24 virtual void CreateOutputObjects();
25 virtual void Exec(Option_t*);
26 virtual void Terminate(Option_t *);
27
28 void SetTrackCuts(AliESDtrackCuts* cuts) { fEsdTrackCuts = cuts; }
29 void SetPtSpectrum(TH1* hist) { fPtSpectrum = hist; }
30
745d6088 31 void SetAnalysisMode(AliPWG0Helper::AnalysisMode mode) { fAnalysisMode = mode; }
a2cdb42c 32 void SetTrigger(AliPWG0Helper::Trigger trigger) { fTrigger = trigger; }
33
2fa65f52 34 void SetReadMC(Bool_t flag = kTRUE) { fReadMC = flag; }
f3eb27f6 35 void SetUseMCVertex(Bool_t flag = kTRUE) { fUseMCVertex = flag; }
2fa65f52 36
a9017e49 37 protected:
38 AliESDEvent *fESD; //! ESD object
39
40 TString fOption; // option string
745d6088 41 AliPWG0Helper::AnalysisMode fAnalysisMode; // detector that is used for analysis
a2cdb42c 42 AliPWG0Helper::Trigger fTrigger; // trigger that is used
43
2fa65f52 44 Bool_t fReadMC; // if true reads MC data (to build correlation maps)
f3eb27f6 45 Bool_t fUseMCVertex; // the MC vtx is used instead of the ESD vertex (for syst. check)
a9017e49 46
47 AliMultiplicityCorrection* fMultiplicity; //! object containing the extracted data
48 AliESDtrackCuts* fEsdTrackCuts; // Object containing the parameters of the esd track cuts
49
2fa65f52 50 Bool_t fSystSkipParticles; //! if true skips particles (systematic study)
5a6310fe 51 AliCorrection* fParticleCorrection[4]; //! correction from measured to generated particles for different particles for trigger, vertex sample in |eta| < 2; switch on with particle-efficiency
a9017e49 52 // for each of the species: pi, k, p, other; for systematic study of pt cut off
2fa65f52 53 Int_t fSelectProcessType; //! 0 = all (default), 1 = ND, 2 = SD, 3 = DD (for systematic study)
a9017e49 54 TNtuple *fParticleSpecies; //! per event: vtx_mc, (pi, k, p, rest (in |eta| < 2)) X (true, recon) + (nolabel,
55 // doubleTracks, doublePrimaries) [doubleTracks + doublePrimaries are already part of
56 // rec. particles!)
57
58 TH1* fPtSpectrum; //! function that modifies the pt spectrum (syst. study)
59
60 TList* fOutput; //! list send on output slot 0
61
62 private:
63 AliMultiplicityTask(const AliMultiplicityTask&);
64 AliMultiplicityTask& operator=(const AliMultiplicityTask&);
65
66 ClassDef(AliMultiplicityTask, 1);
67};
68
69#endif