]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGLF/FORWARD/analysis2/AliFMDEnergyFitterTask.h
Multiple fixes:
[u/mrichter/AliRoot.git] / PWGLF / FORWARD / analysis2 / AliFMDEnergyFitterTask.h
CommitLineData
7984e5f7 1// Histogram and fit the energy loss distributions for the FMD
2//
3// Wraps AliFMDEnergyFitter
4#ifndef ALIFMDENERGYFITTERTASK_H
5#define ALIFMDENERGYFITTERTASK_H
ffca499d 6/**
7 * @file AliFMDEnergyFitterTask.h
8 * @author Christian Holm Christensen <cholm@dalsgaard.hehi.nbi.dk>
9 * @date Wed Mar 23 14:02:39 2011
10 *
11 * @brief
12 *
bd6f5206 13 * @ingroup pwglf_forward_eloss
ffca499d 14 *
15 */
0bd4b00f 16#include <AliAnalysisTaskSE.h>
0bd4b00f 17#include "AliFMDEventInspector.h"
18#include "AliFMDEnergyFitter.h"
19#include <AliESDFMD.h>
20#include <TH1I.h>
21class AliESDEvent;
22class TH2D;
23class TList;
24class TTree;
25
26
0bd4b00f 27/**
28 * Histogram and fit the energy loss distributions for the FMD
29 *
30 * @par Inputs:
31 * - AliESDEvent
32 *
33 * @par Outputs:
34 * - None
35 *
36 * @par Histograms
37 *
38 * @par Corrections used
39 * - None
40 *
bd6f5206 41 * @ingroup pwglf_forward_tasks
42 * @ingroup pwglf_forward_eloss
0bd4b00f 43 *
44 */
45class AliFMDEnergyFitterTask : public AliAnalysisTaskSE
46{
47public:
48 /**
49 * Constructor
50 *
51 * @param name Name of task
52 */
53 AliFMDEnergyFitterTask(const char* name);
54 /**
55 * Constructor
56 */
57 AliFMDEnergyFitterTask();
58 /**
59 * Copy constructor
60 *
61 * @param o Object to copy from
62 */
63 AliFMDEnergyFitterTask(const AliFMDEnergyFitterTask& o);
64 /**
65 * Assignment operator
66 *
67 * @param o Object to assign from
68 *
69 * @return Reference to this object
70 */
71 AliFMDEnergyFitterTask& operator=(const AliFMDEnergyFitterTask& o);
72 /**
73 * @{
74 * @name Interface methods
75 */
76 /**
77 * Initialize the task
78 *
79 */
80 virtual void Init();
81 /**
82 * Create output objects
83 *
84 */
85 virtual void UserCreateOutputObjects();
86 /**
87 * Process each event
88 *
89 * @param option Not used
90 */
91 virtual void UserExec(Option_t* option);
92 /**
93 * End of job
94 *
95 * @param option Not used
96 */
97 virtual void Terminate(Option_t* option);
98 /**
99 * @}
100 */
101 /**
102 * Print information
103 *
104 * @param option Not used
105 */
106 void Print(Option_t* option="") const;
107 /**
108 * @{
109 * @name Access to sub-algorithms
110 */
111 /**
112 * Get reference to the EventInspector algorithm
113 *
114 * @return Reference to AliFMDEventInspector object
115 */
116 AliFMDEventInspector& GetEventInspector() { return fEventInspector; }
117 /**
118 * Get reference to the EnergyFitter algorithm
119 *
120 * @return Reference to AliFMDEnergyFitter object
121 */
122 AliFMDEnergyFitter& GetEnergyFitter() { return fEnergyFitter; }
123 /**
124 * @}
125 */
7984e5f7 126 /**
127 * Set the debug level
128 *
129 * @param dbg Debug level
130 */
0bd4b00f 131 void SetDebug(Int_t dbg);
290052e7 132 /**
133 * Set low cut on B
134 *
135 * @param b Low cut
136 */
e58000b7 137 void SetBLow(Float_t b) {fbLow = b;}
290052e7 138 /**
139 * Set high cut on B
140 *
141 * @param b high cut
142 */
e58000b7 143 void SetBHigh(Float_t b) {fbHigh = b;}
0bd4b00f 144protected:
145 /**
146 * Initialise the sub objects and stuff. Called on first event
147 *
148 */
149 virtual void InitializeSubs();
150
151 Bool_t fFirstEvent; // Whether the event is the first seen
152 AliFMDEventInspector fEventInspector; // Algorithm
153 AliFMDEnergyFitter fEnergyFitter; // Algorithm
154 TList* fList; // Output list
290052e7 155 Float_t fbLow; // What's this?
156 Float_t fbHigh; // What's this?
e58000b7 157
0bd4b00f 158 ClassDef(AliFMDEnergyFitterTask,1) // Forward multiplicity class
159};
160
161#endif
162// Local Variables:
163// mode: C++
164// End:
165