]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG0/dNdPt/AlidNdPt.h
removed duplications in AlidNdPtHelper and AliPWG0Helper and small changes
[u/mrichter/AliRoot.git] / PWG0 / dNdPt / AlidNdPt.h
CommitLineData
0aaa8b91 1#ifndef ALIDNDPT_H
2#define ALIDNDPT_H
3
4//------------------------------------------------------------------------------
5// Abstract class for dNdPt analysis. All dNdPt components should derive from it.
6//
7// Author: J.Otwinowski 03/11/2008
8//------------------------------------------------------------------------------
9
10class AliESDEvent;
11class AliMCEvent;
12class AliESDtrackCuts;
13class AlidNdPtEventCuts;
14class AlidNdPtAcceptanceCuts;
15
16#include "TNamed.h"
17#include "TFolder.h"
bad4ba69 18#include "AliPWG0Helper.h"
0aaa8b91 19#include "AlidNdPtHelper.h"
20
21class AlidNdPt : public TNamed {
22public:
23 AlidNdPt();
24 AlidNdPt(Char_t* name, Char_t* title);
25 ~AlidNdPt();
26
27 // Init data members
28 virtual void Init() = 0;
29
30 // Process events
31 virtual void Process(AliESDEvent *const esdEvent=0, AliMCEvent *const mcEvent=0) = 0;
32
33 // Merge output objects (needed by PROOF)
34 virtual Long64_t Merge(TCollection* list=0) = 0;
35
36 // Analyse output histograms
37 virtual void Analyse() = 0;
38
39 // Export analysed output objects to folder
40 virtual TFolder *ExportToFolder(TObjArray * array=0) = 0;
41
42 //
43 AlidNdPt(const AlidNdPt&); // not implemented
44 AlidNdPt& operator=(const AlidNdPt&); // not implemented
45
46 //
bad4ba69 47 void SetEventCuts(AlidNdPtEventCuts* const cuts) { fdNdPtEventCuts = cuts; }
48 void SetAcceptanceCuts(AlidNdPtAcceptanceCuts* const cuts) { fdNdPtAcceptanceCuts = cuts; }
49 void SetTrackCuts(AliESDtrackCuts* const cuts) { fEsdTrackCuts = cuts; }
50 void SetUseMCInfo(const Bool_t info) { fUseMCInfo = info; }
51 void SetAnalysisMode(const AlidNdPtHelper::AnalysisMode mode) { fAnalysisMode = mode; }
52 void SetTrigger(const AliPWG0Helper::Trigger trigger) { fTrigger = trigger; }
53
54 AlidNdPtEventCuts* GetEventCuts() const { return fdNdPtEventCuts; }
55 AlidNdPtAcceptanceCuts* GetAcceptanceCuts() const { return fdNdPtAcceptanceCuts; }
56 AliESDtrackCuts* GetTrackCuts() const { return fEsdTrackCuts; }
57 Bool_t IsUseMCInfo() const { return fUseMCInfo; }
58 AlidNdPtHelper::AnalysisMode GetAnalysisMode() const { return fAnalysisMode; }
59 AliPWG0Helper::Trigger GetTrigger() const { return fTrigger; }
0aaa8b91 60
61private:
62
63 AlidNdPtEventCuts *fdNdPtEventCuts; // event cuts
64 AlidNdPtAcceptanceCuts *fdNdPtAcceptanceCuts; // acceptance cuts
65 AliESDtrackCuts *fEsdTrackCuts; // esd track cuts
66
67 Bool_t fUseMCInfo; // use MC information
68 AlidNdPtHelper::AnalysisMode fAnalysisMode; // analysis mode TPC only, TPC + ITS
bad4ba69 69 AliPWG0Helper::Trigger fTrigger; // trigger definition MB1, MB2 ...
0aaa8b91 70
71 ClassDef(AlidNdPt,1);
72};
73
74#endif