]>
Commit | Line | Data |
---|---|---|
1c038f67 | 1 | #ifndef ALIFMDANALYSISTASKBFCORRELATION_H |
2 | #define ALIFMDANALYSISTASKBFCORRELATION_H | |
3 | ||
4 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
5 | * See cxx source for full Copyright notice */ | |
6 | ||
7 | #include "AliAnalysisTask.h" | |
8 | ||
9 | #include "TObjArray.h" | |
10 | #include "TObjString.h" | |
11 | #include "TArrayI.h" | |
12 | #include "TH1I.h" | |
4b8bdb60 | 13 | #include "TH2.h" |
1c038f67 | 14 | #include "AliMCEvent.h" |
15 | #include "AliFMDFloatMap.h" | |
4b8bdb60 | 16 | #include "TCanvas.h" |
1c038f67 | 17 | |
18 | /** | |
1b418b63 | 19 | * Task to do the backward/forward correlation analysis |
20 | * | |
21 | * Input: | |
22 | * List of histograms from AliFMDAnaysisTaskBackground | |
23 | * | |
24 | * Output: | |
25 | * List of histograms of ... | |
26 | * | |
27 | * Used correction objects: | |
28 | * | |
29 | * | |
1c038f67 | 30 | * @ingroup FMD_ana |
31 | */ | |
32 | class AliFMDAnalysisTaskBFCorrelation : public AliAnalysisTask | |
33 | { | |
1b418b63 | 34 | public: |
35 | /** | |
36 | * Constructor | |
37 | * | |
38 | * | |
39 | */ | |
1c038f67 | 40 | AliFMDAnalysisTaskBFCorrelation(); |
1b418b63 | 41 | /** |
42 | * Constructor | |
43 | * | |
44 | * @param name Name of task | |
45 | * @param SE Whether we're run from SE task | |
46 | */ | |
1c038f67 | 47 | AliFMDAnalysisTaskBFCorrelation(const char* name, Bool_t SE = kTRUE); |
1b418b63 | 48 | /** |
49 | * Destructor | |
50 | */ | |
51 | virtual ~AliFMDAnalysisTaskBFCorrelation() {;} | |
52 | /** | |
53 | * Copy constructor | |
54 | * | |
55 | * @param o Object to copy from | |
56 | */ | |
2869f0ae | 57 | AliFMDAnalysisTaskBFCorrelation(const AliFMDAnalysisTaskBFCorrelation& o) |
1b418b63 | 58 | : AliAnalysisTask(), |
59 | fDebug(o.fDebug), | |
60 | fOutputList(0), | |
61 | fInputList(0), | |
62 | fInternalList(0), | |
63 | fVertexString(o.fVertexString), | |
64 | fStandalone(o.fStandalone), | |
65 | fEvent(0), | |
66 | fnBinsX(0), | |
67 | fXmin(0), | |
68 | fXmax(0), | |
69 | fnBinsY(0), | |
70 | fYmin(0), | |
71 | fYmax(0) | |
2869f0ae | 72 | {} |
1b418b63 | 73 | /** |
74 | * Assignment operator | |
75 | * | |
76 | * | |
77 | * @return Reference to this. | |
78 | */ | |
79 | AliFMDAnalysisTaskBFCorrelation& | |
80 | operator=(const AliFMDAnalysisTaskBFCorrelation&) { return *this; } | |
81 | /** | |
82 | * @{ | |
83 | * @name Implementation of interface methods | |
84 | */ | |
1c038f67 | 85 | virtual void ConnectInputData(Option_t *option = ""); |
86 | virtual void CreateOutputObjects(); | |
87 | virtual void Init() {} | |
88 | virtual void LocalInit() {Init();} | |
89 | virtual void Exec(Option_t *option); | |
90 | virtual void Terminate(Option_t *option); | |
91 | virtual void SetDebugLevel(Int_t level) {fDebug = level;} | |
1b418b63 | 92 | /** |
93 | * @} | |
94 | */ | |
95 | /** | |
96 | * Set the input list of histograms | |
97 | * | |
98 | * @param inputList Input list | |
99 | */ | |
1c038f67 | 100 | void SetInputList(TList* inputList) {fInputList = inputList;} |
1b418b63 | 101 | /** |
102 | * Set the input vertex | |
103 | * | |
104 | * @param vtxString String | |
105 | */ | |
1c038f67 | 106 | void SetInputVertex(TObjString* vtxString) {fVertexString = vtxString;} |
1b418b63 | 107 | /** |
108 | * Set the output list | |
109 | * | |
110 | * @param outputList Output list | |
111 | */ | |
1c038f67 | 112 | void SetOutputList(TList* outputList) {fOutputList = outputList;} |
1b418b63 | 113 | /** |
114 | * Project the data, and mirror it. | |
115 | * | |
116 | * @param sType | |
117 | */ | |
2869f0ae | 118 | void ProjectAndMirror(TString sType); |
1b418b63 | 119 | /** |
120 | * Calculate values | |
121 | * | |
122 | * @param sType | |
123 | */ | |
2869f0ae | 124 | void CalculateValues(TString sType); |
125 | // void ProjectAndMirror(TString type); | |
126 | // void CalculateParameters(TString type); | |
1b418b63 | 127 | /** |
128 | * The multiplicity versus eta | |
129 | * | |
130 | * @param type | |
131 | */ | |
2869f0ae | 132 | void MultiplicityVsEta(TString type); |
1b418b63 | 133 | /** |
134 | * Create the response matrix | |
135 | * | |
136 | */ | |
2869f0ae | 137 | void CreateResponseMatrix(); |
1b418b63 | 138 | /** |
139 | * Process a primary hit | |
140 | * | |
141 | */ | |
1c038f67 | 142 | void ProcessPrimary(); |
1b418b63 | 143 | /** |
144 | * Get the list out out objects | |
145 | * | |
146 | * | |
147 | * @return | |
148 | */ | |
1c038f67 | 149 | TList* GetOutputList() {return fOutputList;} |
1b418b63 | 150 | private: |
4b8bdb60 | 151 | |
1c038f67 | 152 | Int_t fDebug; // Debug flag |
1b418b63 | 153 | TList* fOutputList; // output list |
154 | TList* fInputList; // Input list | |
155 | TList* fInternalList; // Internal list | |
156 | TObjString* fVertexString; // Vertex string | |
157 | Bool_t fStandalone; // Running standalone? | |
4b8bdb60 | 158 | |
1b418b63 | 159 | Int_t fEvent; // Event number |
160 | Int_t fnBinsX; // Number of bins | |
161 | Float_t fXmin; // Minimum | |
162 | Float_t fXmax; // Maximum | |
163 | Int_t fnBinsY; // Number of bins | |
164 | Float_t fYmin; // Minumum | |
165 | Float_t fYmax; // Maximum | |
4b8bdb60 | 166 | |
1c038f67 | 167 | ClassDef(AliFMDAnalysisTaskBFCorrelation, 0); // Analysis task for FMD analysis |
168 | }; | |
169 | ||
170 | #endif | |
171 | // Local Variables: | |
172 | // mode: C++ | |
173 | // End: |