]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGLF/SPECTRA/PiKaPr/TestAOD/AliAnalysisTaskSpectraBoth.h
Merge branch 'master' of https://git.cern.ch/reps/AliRoot
[u/mrichter/AliRoot.git] / PWGLF / SPECTRA / PiKaPr / TestAOD / AliAnalysisTaskSpectraBoth.h
CommitLineData
a65a7e70 1#ifndef ALIANALYSISTASKSPECTRABOTH_H
2#define ALIANALYSISTASKSPECTRABOTH_H
3
4/* See cxx source for full Copyright notice */
5
6//-------------------------------------------------------------------------
7// AliAnalysisTaskSpectraBoth
8//
9//
10//
11//
12// Author: Michele Floris, CERN
13//-------------------------------------------------------------------------
14
15class TH1F;
16class TH2F;
17class AliVEvent;
18class AliSpectraBothHistoManager;
19class AliSpectraBothTrackCuts;
20class AliSpectraBothEventCuts;
21class AliSpectraBothPID;
22class AliESDtrackCuts;
23class AliGenEventHeader;
24
25#include "AliSpectraBothHistoManager.h"
26#include "AliAnalysisTaskSE.h"
27#include "AliESDtrackCuts.h"
28
29class AliAnalysisTaskSpectraBoth : public AliAnalysisTaskSE
30{
31public:
32
33 // constructors
be25efef 34 AliAnalysisTaskSpectraBoth() : AliAnalysisTaskSE(), fAOD(0), fHistMan(0), fTrackCuts(0), fEventCuts(0), fPID(0), fIsMC(0), fNRebin(0),fUseMinSigma(0),fCuts(0),fdotheMCLoopAfterEventCuts(0),fmakePIDQAhisto(1),fMotherWDPDGcode(-1)
a65a7e70 35 {}
36 AliAnalysisTaskSpectraBoth(const char *name);
37 virtual ~AliAnalysisTaskSpectraBoth() {}
38
39 void SetIsMC(Bool_t isMC = kFALSE) {fIsMC = isMC; };
40 Bool_t GetIsMC() const { return fIsMC;};
41
42 virtual void UserCreateOutputObjects();
43 virtual void UserExec(Option_t *option);
44 virtual void Terminate(Option_t *);
45
46 AliSpectraBothHistoManager * GetHistoManager() { return fHistMan; }
47 AliSpectraBothTrackCuts * GetTrackCuts() { return fTrackCuts; }
48 AliSpectraBothEventCuts * GetEventCuts() { return fEventCuts; }
49 AliSpectraBothPID * GetPID() { return fPID; }
50
51 void SetTrackCuts(AliSpectraBothTrackCuts * tc) { fTrackCuts = tc; }
52 void SetEventCuts(AliSpectraBothEventCuts * vc) { fEventCuts = vc; }
53 void SetPID (AliSpectraBothPID * pid) { fPID = pid; }
54 void SetNRebin(Int_t nreb){fNRebin=nreb;}
55 void SetUseMinSigma (Bool_t flag) {fUseMinSigma=flag;}
56 Int_t GetNRebin() const {return fNRebin;}
57 void SetAliESDtrackCuts(AliESDtrackCuts* cuts ){fCuts=cuts;}
58 void SetdotheMCLoopAfterEventCuts (Bool_t flag) {fdotheMCLoopAfterEventCuts=flag;}
59 Bool_t GetdotheMCLoopAfterEventCuts () const {return fdotheMCLoopAfterEventCuts;}
be25efef 60 void SetMakePIDQAHisto(Bool_t flag){fmakePIDQAhisto=flag;}
61 void SetMotherWDPDGCode(Int_t value){fMotherWDPDGcode=value;}
a65a7e70 62private:
63
64 AliVEvent * fAOD; //! AOD object
65 AliSpectraBothHistoManager * fHistMan; // Histogram Manager
66 AliSpectraBothTrackCuts * fTrackCuts; // Track Cuts
67 AliSpectraBothEventCuts * fEventCuts; // Event Cuts
68 AliSpectraBothPID * fPID;// PID class
69 Bool_t fIsMC;// true if processing MC
70 Int_t fNRebin; //rebin of histos
71 Bool_t fUseMinSigma; // if true use min sigma
be25efef 72 AliESDtrackCuts *fCuts; // ESD track cuts
73 Bool_t fdotheMCLoopAfterEventCuts; // if true first check the ESD event cuts than loop over MC info , if flase other approach
74 Bool_t fmakePIDQAhisto; // if true makes PIDQA histos
75 Int_t fMotherWDPDGcode; //the abs of pdg code of the mother for WD decays , used during systematic studies
a65a7e70 76
77 AliAnalysisTaskSpectraBoth(const AliAnalysisTaskSpectraBoth&);
78 AliAnalysisTaskSpectraBoth& operator=(const AliAnalysisTaskSpectraBoth&);
79
be25efef 80 ClassDef(AliAnalysisTaskSpectraBoth, 3);
a65a7e70 81};
82
83#endif