]>
Commit | Line | Data |
---|---|---|
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 | ||
10 | class AliESDEvent; | |
11 | class AliMCEvent; | |
12 | class AliESDtrackCuts; | |
13 | class AlidNdPtEventCuts; | |
14 | class AlidNdPtAcceptanceCuts; | |
d269b0e6 | 15 | class AliPhysicsSelection; |
7f7dd416 | 16 | class AlidNdPtBackgroundCuts; |
0aaa8b91 | 17 | |
18 | #include "TNamed.h" | |
19 | #include "TFolder.h" | |
70fdd197 | 20 | #include "AliTriggerAnalysis.h" |
0aaa8b91 | 21 | #include "AlidNdPtHelper.h" |
22 | ||
23 | class AlidNdPt : public TNamed { | |
24 | public: | |
25 | AlidNdPt(); | |
26 | AlidNdPt(Char_t* name, Char_t* title); | |
27 | ~AlidNdPt(); | |
28 | ||
29 | // Init data members | |
30 | virtual void Init() = 0; | |
31 | ||
32 | // Process events | |
33 | virtual void Process(AliESDEvent *const esdEvent=0, AliMCEvent *const mcEvent=0) = 0; | |
34 | ||
35 | // Merge output objects (needed by PROOF) | |
c931948b | 36 | virtual Long64_t Merge(TCollection* const list=0) = 0; |
0aaa8b91 | 37 | |
38 | // Analyse output histograms | |
39 | virtual void Analyse() = 0; | |
40 | ||
41 | // Export analysed output objects to folder | |
c931948b | 42 | virtual TFolder *ExportToFolder(TObjArray * const array=0) = 0; |
0aaa8b91 | 43 | |
44 | // | |
45 | AlidNdPt(const AlidNdPt&); // not implemented | |
46 | AlidNdPt& operator=(const AlidNdPt&); // not implemented | |
47 | ||
48 | // | |
bad4ba69 | 49 | void SetEventCuts(AlidNdPtEventCuts* const cuts) { fdNdPtEventCuts = cuts; } |
50 | void SetAcceptanceCuts(AlidNdPtAcceptanceCuts* const cuts) { fdNdPtAcceptanceCuts = cuts; } | |
51 | void SetTrackCuts(AliESDtrackCuts* const cuts) { fEsdTrackCuts = cuts; } | |
52 | void SetUseMCInfo(const Bool_t info) { fUseMCInfo = info; } | |
53 | void SetAnalysisMode(const AlidNdPtHelper::AnalysisMode mode) { fAnalysisMode = mode; } | |
70fdd197 | 54 | void SetTrigger(const AliTriggerAnalysis::Trigger trigger) { fTrigger = trigger; } |
985bdfd5 | 55 | void SetTriggerClass(const Char_t *triggerClass) { fTriggerClass = triggerClass; } |
847e74b2 | 56 | void SetParticleMode(const AlidNdPtHelper::ParticleMode mode) { fParticleMode = mode; } |
d269b0e6 | 57 | void SetPhysicsTriggerSelection(AliPhysicsSelection* const selection) { fPhysicsSelection = selection; } |
7f7dd416 | 58 | void SetBackgroundCuts(AlidNdPtBackgroundCuts* const cuts) { fdNdPtBackgroundCuts = cuts; } |
bad4ba69 | 59 | |
60 | AlidNdPtEventCuts* GetEventCuts() const { return fdNdPtEventCuts; } | |
61 | AlidNdPtAcceptanceCuts* GetAcceptanceCuts() const { return fdNdPtAcceptanceCuts; } | |
62 | AliESDtrackCuts* GetTrackCuts() const { return fEsdTrackCuts; } | |
63 | Bool_t IsUseMCInfo() const { return fUseMCInfo; } | |
64 | AlidNdPtHelper::AnalysisMode GetAnalysisMode() const { return fAnalysisMode; } | |
70fdd197 | 65 | AliTriggerAnalysis::Trigger GetTrigger() const { return fTrigger; } |
985bdfd5 | 66 | const Char_t* GetTriggerClass() const { return fTriggerClass; } |
847e74b2 | 67 | AlidNdPtHelper::ParticleMode GetParticleMode() const { return fParticleMode; } |
d269b0e6 | 68 | AliPhysicsSelection* GetPhysicsTriggerSelection() const { return fPhysicsSelection; } |
7f7dd416 | 69 | AlidNdPtBackgroundCuts* GetBackgroundCuts() const { return fdNdPtBackgroundCuts; } |
0aaa8b91 | 70 | |
71 | private: | |
72 | ||
73 | AlidNdPtEventCuts *fdNdPtEventCuts; // event cuts | |
74 | AlidNdPtAcceptanceCuts *fdNdPtAcceptanceCuts; // acceptance cuts | |
75 | AliESDtrackCuts *fEsdTrackCuts; // esd track cuts | |
76 | ||
77 | Bool_t fUseMCInfo; // use MC information | |
78 | AlidNdPtHelper::AnalysisMode fAnalysisMode; // analysis mode TPC only, TPC + ITS | |
70fdd197 | 79 | AliTriggerAnalysis::Trigger fTrigger; // trigger definition MB1, MB2 ... |
985bdfd5 | 80 | const Char_t * fTriggerClass; // trigger class |
847e74b2 | 81 | AlidNdPtHelper::ParticleMode fParticleMode; // selected particle (pion, kaon, ...) |
0aaa8b91 | 82 | |
d269b0e6 | 83 | AliPhysicsSelection* fPhysicsSelection; // physics trigger selection class |
7f7dd416 | 84 | AlidNdPtBackgroundCuts *fdNdPtBackgroundCuts; // background cuts (cosmics and splitted tracks) |
d269b0e6 | 85 | |
0aaa8b91 | 86 | ClassDef(AlidNdPt,1); |
87 | }; | |
88 | ||
89 | #endif |