More code clean up.
[u/mrichter/AliRoot.git] / PWG2 / FORWARD / analysis2 / AliForwardMCCorrectionsTask.h
CommitLineData
563a673f 1#ifndef ALIROOT_PWG2_FORWARD_ALIFORWARDCORRECTIONS_H
2#define ALIROOT_PWG2_FORWARD_ALIFORWARDCORRECTIONS_H
3#include <AliAnalysisTaskSE.h>
4#include "AliForwardUtil.h"
5#include "AliFMDSharingFilter.h"
6#include "AliFMDDensityCalculator.h"
7#include "AliFMDCorrections.h"
8#include "AliFMDHistCollector.h"
9#include "AliAODForwardMult.h"
10#include <AliESDFMD.h>
11#include <TH1I.h>
12class AliFMDAnaParameters;
13class AliESDEvent;
14class TH2D;
0bd4b00f 15class TH3D;
563a673f 16class TList;
17class TTree;
18
19
20/**
21 * Calculate the corrections in the forward regions
22 *
23 * @par Inputs:
24 * - AliESDEvent
25 *
26 * @par Outputs:
27 * - AliAODForwardMult
28 *
29 * @par Histograms
30 *
31 * @par Corrections used
32 *
33 * @ingroup pwg2_forward_analysis
34 *
35 */
0bd4b00f 36class AliForwardMCCorrectionsTask : public AliAnalysisTaskSE
563a673f 37{
38public:
39 /**
40 * Constructor
41 *
42 * @param name Name of task
43 */
0bd4b00f 44 AliForwardMCCorrectionsTask(const char* name);
563a673f 45 /**
46 * Constructor
47 */
0bd4b00f 48 AliForwardMCCorrectionsTask();
563a673f 49 /**
50 * Copy constructor
51 *
52 * @param o Object to copy from
53 */
0bd4b00f 54 AliForwardMCCorrectionsTask(const AliForwardMCCorrectionsTask& o);
563a673f 55 /**
56 * Assignment operator
57 *
58 * @param o Object to assign from
59 *
60 * @return Reference to this object
61 */
0bd4b00f 62 AliForwardMCCorrectionsTask& operator=(const AliForwardMCCorrectionsTask& o);
563a673f 63 /**
64 * @{
65 * @name Interface methods
66 */
67 /**
68 * Initialize the task
69 *
70 */
71 virtual void Init();
72 /**
73 * Create output objects
74 *
75 */
76 virtual void UserCreateOutputObjects();
77 /**
78 * Process each event
79 *
80 * @param option Not used
81 */
82 virtual void UserExec(Option_t* option);
83 /**
84 * End of job
85 *
86 * @param option Not used
87 */
88 virtual void Terminate(Option_t* option);
89 /**
90 * @}
91 */
92 void Print(Option_t* option="") const;
93
94 void SetVertexAxis(Int_t nBins, Double_t vzMin, Double_t vzMax=-1000000);
95 void SetVertexAxis(const TAxis& axis);
96 void SetEtaAxis(Int_t nBins, Double_t etaMin, Double_t etaMax=-1000000);
97 void SetEtaAxis(const TAxis& axis);
98protected:
99 TH2D* GetVertexProj(Int_t v, TH3D* src) const;
0bd4b00f 100 TH3D* Make3D(const char* name, const char* title, Int_t nPhi) const;
101 TH1D* Make1D(const char* name, const char* title) const;
102 void FillPrimary(Bool_t gotInel, Bool_t gotVtx,
103 Double_t vz, Double_t eta, Double_t phi);
104 void FillStrip(UShort_t d, Char_t r,
105 Double_t vz, Double_t eta, Double_t phi,
106 Bool_t first);
563a673f 107 TH1I* fHEvents; // All Events
108 TH1I* fHEventsTr; // Histogram of events w/trigger
109 TH1I* fHEventsTrVtx; // Events w/trigger and vertex
110 TH1I* fHEventsVtx; // Events w/vertex
111 TH1I* fHTriggers; // Triggers
112 TH3D* fPrimaryInnerAll; // Distribution of primaries - all events
113 TH3D* fPrimaryOuterAll; // Distribution of primaries - all events
114 TH3D* fPrimaryInnerTrVtx; // Distribution of primaries - trg+vtx events
115 TH3D* fPrimaryOuterTrVtx; // Distribution of primaries - trg+vtx events
116 TH3D* fHitsFMD1i; // Distribution of FMD1i hits
117 TH3D* fHitsFMD2i; // Distribution of FMD2i hits
118 TH3D* fHitsFMD2o; // Distribution of FMD2o hits
119 TH3D* fHitsFMD3i; // Distribution of FMD3i hits
120 TH3D* fHitsFMD3o; // Distribution of FMD3o hits
121 TH1D* fStripsFMD1i; // Distribution of FMD1i # strips hit
122 TH1D* fStripsFMD2i; // Distribution of FMD2i # strips hit
123 TH1D* fStripsFMD2o; // Distribution of FMD2o # strips hit
124 TH1D* fStripsFMD3i; // Distribution of FMD3i # strips hit
125 TH1D* fStripsFMD3o; // Distribution of FMD3o # strips hit
126 TAxis fVtxAxis; // Vertex axis
127 TAxis fEtaAxis; // Eta axis
128
129 TList* fList; // Output list
130
0bd4b00f 131 ClassDef(AliForwardMCCorrectionsTask,1) // Forward corrections class
563a673f 132};
133
134#endif
135// Local Variables:
136// mode: C++
137// End:
138