]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG2/FORWARD/analysis2/AliFMDEnergyFitterTask.h
removing the setting of AOD track references for TPC only tracks
[u/mrichter/AliRoot.git] / PWG2 / FORWARD / analysis2 / AliFMDEnergyFitterTask.h
1 // Histogram and fit the energy loss distributions for the FMD
2 // 
3 // Wraps AliFMDEnergyFitter 
4 #ifndef ALIFMDENERGYFITTERTASK_H
5 #define ALIFMDENERGYFITTERTASK_H
6 #include <AliAnalysisTaskSE.h>
7 #include "AliForwardUtil.h"
8 #include "AliFMDEventInspector.h"
9 #include "AliFMDEnergyFitter.h"
10 #include <AliESDFMD.h>
11 #include <TH1I.h>
12 class AliESDEvent;
13 class TH2D;
14 class TList;
15 class TTree;
16
17
18 /** 
19  * Histogram and fit the energy loss distributions for the FMD
20  * 
21  * @par Inputs: 
22  *   - AliESDEvent 
23  *
24  * @par Outputs: 
25  *   - None
26  * 
27  * @par Histograms 
28  *   
29  * @par Corrections used 
30  *   - None
31  * 
32  * @ingroup pwg2_forward_tasks
33  * 
34  */
35 class AliFMDEnergyFitterTask : public AliAnalysisTaskSE
36 {
37 public:
38   /** 
39    * Constructor 
40    * 
41    * @param name Name of task 
42    */
43   AliFMDEnergyFitterTask(const char* name);
44   /** 
45    * Constructor
46    */
47   AliFMDEnergyFitterTask();
48   /** 
49    * Copy constructor 
50    * 
51    * @param o Object to copy from 
52    */
53   AliFMDEnergyFitterTask(const AliFMDEnergyFitterTask& o);
54   /** 
55    * Assignment operator 
56    * 
57    * @param o Object to assign from 
58    * 
59    * @return Reference to this object 
60    */
61   AliFMDEnergyFitterTask& operator=(const AliFMDEnergyFitterTask& o);
62   /** 
63    * @{ 
64    * @name Interface methods 
65    */
66   /** 
67    * Initialize the task 
68    * 
69    */
70   virtual void Init();
71   /** 
72    * Create output objects 
73    * 
74    */
75   virtual void UserCreateOutputObjects();
76   /** 
77    * Process each event 
78    *
79    * @param option Not used
80    */  
81   virtual void UserExec(Option_t* option);
82   /** 
83    * End of job
84    * 
85    * @param option Not used 
86    */
87   virtual void Terminate(Option_t* option);
88   /** 
89    * @} 
90    */
91   /** 
92    * Print information 
93    * 
94    * @param option Not used
95    */
96   void Print(Option_t* option="") const;
97   /** 
98    * @{ 
99    * @name Access to sub-algorithms 
100    */
101   /**
102    * Get reference to the EventInspector algorithm 
103    * 
104    * @return Reference to AliFMDEventInspector object 
105    */
106   AliFMDEventInspector& GetEventInspector() { return fEventInspector; }
107   /**
108    * Get reference to the EnergyFitter algorithm 
109    * 
110    * @return Reference to AliFMDEnergyFitter object 
111    */
112   AliFMDEnergyFitter& GetEnergyFitter() { return fEnergyFitter; }
113   /** 
114    * @} 
115    */
116   /** 
117    * Set the debug level 
118    * 
119    * @param dbg Debug level
120    */
121   void SetDebug(Int_t dbg);
122 protected: 
123   /** 
124    * Initialise the sub objects and stuff.  Called on first event 
125    * 
126    */
127   virtual void   InitializeSubs();
128
129   Bool_t               fFirstEvent;     // Whether the event is the first seen 
130   AliFMDEventInspector fEventInspector; // Algorithm
131   AliFMDEnergyFitter   fEnergyFitter;   // Algorithm
132   TList*               fList;           // Output list 
133
134   ClassDef(AliFMDEnergyFitterTask,1) // Forward multiplicity class
135 };
136
137 #endif
138 // Local Variables:
139 //  mode: C++
140 // End:
141