]> git.uio.no Git - u/mrichter/AliRoot.git/blame_incremental - PWGLF/FORWARD/analysis2/AliForwarddNdetaTask.h
Changed default mutliplicity estimator to V0A.
[u/mrichter/AliRoot.git] / PWGLF / FORWARD / analysis2 / AliForwarddNdetaTask.h
... / ...
CommitLineData
1//
2// Task to analyse the AOD for for dN/deta in the forward regions
3//
4#ifndef ALIFORWARDDNDETATASK_H
5#define ALIFORWARDDNDETATASK_H
6/**
7 * @file AliForwarddNdetaTask.h
8 * @author Christian Holm Christensen <cholm@dalsgaard.hehi.nbi.dk>
9 * @date Wed Mar 23 14:04:54 2011
10 *
11 * @brief
12 *
13 *
14 * @ingroup pwglf_forward_dndeta
15 */
16#include "AliBasedNdetaTask.h"
17class TList;
18class TH2D;
19class TH1D;
20
21/**
22 * Tasks to determine @f$ dN/d\eta@f$ in the forward regions
23 *
24 * @ingroup pwglf_forward_tasks_dndeta
25 * @ingroup pwglf_forward_dndeta
26 */
27class AliForwarddNdetaTask : public AliBasedNdetaTask
28{
29public:
30 /**
31 * Constructor
32 *
33 */
34 AliForwarddNdetaTask();
35 /**
36 * Constructor
37 *
38 * @param name Name of task
39 */
40 AliForwarddNdetaTask(const char* name);
41 /**
42 * Destructor
43 *
44 */
45 virtual ~AliForwarddNdetaTask() {}
46protected:
47 /**
48 * Copy constructor
49 *
50 * @param o object to copy from
51 */
52 AliForwarddNdetaTask(const AliForwarddNdetaTask& o);
53 /**
54 * Assigmement operator
55 *
56 * @return Reference to this
57 */
58 AliForwarddNdetaTask& operator=(const AliForwarddNdetaTask&) { return *this; }
59
60 /**
61 * Retrieve the histogram
62 *
63 * @param aod AOD event
64 * @param mc Whether to get the MC histogram or not
65 *
66 * @return Retrieved histogram or null
67 */
68 TH2D* GetHistogram(const AliAODEvent* aod, Bool_t mc);
69 /**
70 * Get the colour to use for markers (only pp - in PbPb we use a rainbow)
71 *
72 * @return Marker colour
73 */
74 virtual Int_t GetColor() const { return kRed+2; }
75 /**
76 * Make a new centrality bin
77 *
78 * @param name Histogram names
79 * @param l Lower cut
80 * @param h Upper cut
81 *
82 * @return Newly allocated object (of our type)
83 */
84 AliBasedNdetaTask::CentralityBin*
85 MakeCentralityBin(const char* name, Short_t l, Short_t h) const;
86
87 /**
88 * A structure holding the per-centrality bin information
89 *
90 */
91 class CentralityBin : public AliBasedNdetaTask::CentralityBin
92 {
93 public:
94 /**
95 * Constructor
96 */
97 CentralityBin() : AliBasedNdetaTask::CentralityBin() {}
98 /**
99 * Constructor
100 *
101 * @param name Name used for histograms (e.g., Forward)
102 * @param low Lower centrality cut in percent
103 * @param high Upper centrality cut in percent
104 */
105 CentralityBin(const char* name, Short_t low, Short_t high)
106 : AliBasedNdetaTask::CentralityBin(name, low, high)
107 {}
108 /**
109 * Copy constructor
110 *
111 * @param other Object to copy from
112 */
113 CentralityBin(const CentralityBin& other)
114 : AliBasedNdetaTask::CentralityBin(other)
115 {}
116 /**
117 * Destructor
118 */
119 virtual ~CentralityBin() {}
120 /**
121 * Assignement operator
122 *
123 *
124 * @return
125 */
126 CentralityBin& operator=(const CentralityBin&) { return *this; }
127 /**
128 * End of processing
129 *
130 * @param sums List of sums
131 * @param results Output list of results
132 * @param scheme Normalisation scheme options
133 * @param shapeCorr Shape correction or nil
134 * @param trigEff Trigger efficiency
135 * @param trigEff0 0-bin trigger efficiency
136 * @param symmetrice Whether to symmetrice the results
137 * @param rebin Whether to rebin the results
138 * @param rootProj If true, use TH2::ProjectionX
139 * @param corrEmpty Whether to correct for empty bins
140 * @param cutEdges Whether to cut edges when rebinning
141 * @param triggerMask Trigger mask
142 * @param color Marker colour
143 * @param marker Marker style
144 * @param mclist List of MC results
145 * @param truthlist List of MC truth results
146 */
147 virtual void End(TList* sums,
148 TList* results,
149 UShort_t scheme,
150 const TH2F* shapeCorr,
151 Double_t trigEff,
152 Double_t trigEff0,
153 Bool_t symmetrice,
154 Int_t rebin,
155 Bool_t rootProj,
156 Bool_t corrEmpty,
157 Bool_t cutEdges,
158 Int_t triggerMask,
159 Int_t marker,
160 Int_t color,
161 TList* mclist,
162 TList* truthlist);
163 protected:
164 ClassDef(CentralityBin,3); // A centrality bin
165 };
166
167 ClassDef(AliForwarddNdetaTask,3); // Determine multiplicity in forward region
168};
169
170#endif
171//
172// Local Variables:
173// mode: C++
174// End:
175//