Major dielectron framework update; includes "alignment" to updates in
[u/mrichter/AliRoot.git] / PWG3 / dielectron / AliAnalysisTaskDielectronME.h
CommitLineData
ffbede40 1#ifndef ALIANALYSISTASKDIELECTRONME_H
2#define ALIANALYSISTASKDIELECTRONME_H
3/* Copyright(c) 1998-2009, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6//#####################################################
7//# #
8//# Basic Analysis task for Dielectron #
9//# single event analysis #
10//# #
11//# by WooJin J. Park, GSI / W.J.Park@gsi.de #
12//# Ionut C. Arsene, GSI / I.C.Arsene@gsi.de #
13//# Magnus Mager, CERN / Magnus.Mager@cern.ch #
14//# Jens Wiechula, Uni HD / Jens.Wiechula@cern.ch #
15//# #
16//#####################################################
17
18#include "TList.h"
19
20#include "AliAnalysisTaskME.h"
21
22#include "AliDielectronPID.h"
23
24class AliDielectron;
25class TH1D;
26
27class AliAnalysisTaskDielectronME : public AliAnalysisTaskME {
28
29public:
30 AliAnalysisTaskDielectronME();
31 AliAnalysisTaskDielectronME(const char *name);
32 virtual ~AliAnalysisTaskDielectronME(){ }
33
34 virtual void UserExec(Option_t *option);
35 virtual void UserCreateOutputObjects();
36 virtual void FinishTaskOutput();
37 //temporary
38 //virtual void NotifyRun(){AliDielectronPID::SetCorrVal((Double_t)fCurrentRunNumber);}
39 virtual void NotifyRun(){AliDielectronPID::SetCorrVal((Double_t)GetEvent(0)->GetRunNumber());}
40
41 void UsePhysicsSelection(Bool_t phy=kTRUE) {fSelectPhysics=phy;}
42 void SetTriggerMask(UInt_t mask) {fTriggerMask=mask;}
43 UInt_t GetTriggerMask() const { return fTriggerMask; }
44 void SetPoolDepth(Int_t depth=2){fPoolDepth=depth;}
45
46 void AddDielectron(AliDielectron * const die) { fListDielectron.Add(die); }
47
48private:
49
50 TList fListDielectron; // List of dielectron framework instances
51 TList fListHistos; //! List of histogram manager lists in the framework classes
52 TList fListCF; //! List with CF Managers
53
54 Int_t fPoolDepth; // Pool depth for event mixing
55 Bool_t fSelectPhysics; // Whether to use physics selection
56 UInt_t fTriggerMask; // Event trigger mask
57
58 TH1D *fEventStat; //! Histogram with event statistics
59
60 AliAnalysisTaskDielectronME(const AliAnalysisTaskDielectronME &c);
61 AliAnalysisTaskDielectronME& operator= (const AliAnalysisTaskDielectronME &c);
62
63 ClassDef(AliAnalysisTaskDielectronME, 1); //Analysis Task handling multiple instances of AliDielectron
64};
65#endif