]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGLF/FORWARD/analysis2/AliFMDEventPlaneTask.h
A better way to specify the Nch axis for the MultDists task.
[u/mrichter/AliRoot.git] / PWGLF / FORWARD / analysis2 / AliFMDEventPlaneTask.h
CommitLineData
9632bb06 1//
2// Calculate the event plane in the forward regions using the FMD
3//
4#ifndef ALIFMDEVENTPLANETASK_H
5#define ALIFMDEVENTPLANETASK_H
6/**
7 * @file AliFMDEventPlaneTask.h
8 * @author Alexander Hansen
9 * @date Tue Feb 21 2012
10 *
11 * @brief
12 *
13 *
14 * @ingroup pwglf_forward_flow
15 */
16#include "AliAnalysisTaskSE.h"
17#include "AliFMDEventPlaneFinder.h"
18class AliAODForwardMult;
19class TH1D;
20class TH2D;
21
9632bb06 22/**
23 * Calculate the event plane in the forward regions using the FMD
24 *
25 * @par Inputs:
26 * - AliAODEvent
27 *
28 * Outputs:
29 * - AnalysisResults.root
30 *
31 * @ingroup pwglf_forward_tasks_flow
32 * @ingroup pwglf_forward_flow
33 *
34 *
35 */
36class AliFMDEventPlaneTask : public AliAnalysisTaskSE
37{
38public:
39 /**
40 * Constructor
41 */
42 AliFMDEventPlaneTask();
43 /**
44 * Constructor
45 *
46 * @param name Name of task
47 */
48 AliFMDEventPlaneTask(const char* name);
49 /**
50 * Destructor
51 */
52 virtual ~AliFMDEventPlaneTask() {}
53 /**
54 * @{
55 * @name Task interface methods
56 */
57 /**
58 * Create output objects
59 */
60 virtual void UserCreateOutputObjects();
61 /**
62 * Initialize the task
63 */
64 virtual void Init() {}
65 /**
66 * Process each event
67 *
68 * @param option Not used
69 */
70 virtual void UserExec(Option_t *option);
71 /**
72 * End of job
73 *
74 * @param option Not used
75 */
76 virtual void Terminate(Option_t *option);
290052e7 77 /**
9632bb06 78 * Check AODForwardMult object for trigger, vertex and centrality
79 * returns true if event is OK
80 *
290052e7 81 * @param aodfm Output object
9632bb06 82 *
83 * @return Bool_t
84 */
85 Bool_t AODCheck(const AliAODForwardMult* aodfm);
86 /**
87 * Get reference to the EventPlaneFinder algorithm
88 *
89 * @return Reference to AliFMDEventPlaneFinder object
90 */
91 AliFMDEventPlaneFinder& GetEventPlaneFinder() { return fEventPlaneFinder; }
92 /**
93 * Get reference to the EventPlaneFinder algorithm
94 *
95 * @return Reference to AliFMDEventPlaneFinder object
96 */
97 const AliFMDEventPlaneFinder& GetEventPlaneFinder() const { return fEventPlaneFinder; }
98 /*
99 * Set MC input flag - currently does nothing special
100 *
101 * @ param mc MC input flag
102 */
103 void SetMCInput(Bool_t mc = true) { fMC = mc; }
104
105protected:
106 /**
107 * Copy constructor
108 *
109 * @param o Object to copy from
110 */
111 AliFMDEventPlaneTask(const AliFMDEventPlaneTask& o);
112 /**
113 * Assignment operator
114 *
115 * @return Reference to this object
116 */
117 AliFMDEventPlaneTask& operator=(const AliFMDEventPlaneTask&);
118
119 TList* fSumList; // Sum list
120 TList* fOutputList; // Output list
121 AliAODEvent* fAOD; // AOD event
122 Bool_t fMC; // MC input?
123 AliFMDEventPlaneFinder fEventPlaneFinder; // Eventplane finder for the FMD
124 Float_t fZvertex; // Z vertex
125 Double_t fCent; // Centrality
126 TH1D* fHistCent; // Diagnostics histogram
127 TH1D* fHistVertexSel; // Diagnostics histogram
128 TH1D* fHistVertexAll; // Diagnostics histogram
129
5934a3e3 130 ClassDef(AliFMDEventPlaneTask, 2); // Analysis task for FMD analysis
9632bb06 131};
132
133#endif
134// Local Variables:
135// mode: C++
136// End: