]>
Commit | Line | Data |
---|---|---|
c5058a61 | 1 | #ifndef ALIFMDDNDETA_H |
2 | #define ALIFMDDNDETA_H | |
3 | ||
4 | #include "TObject.h" | |
5 | #include "TList.h" | |
6 | #include "TString.h" | |
2dcdd4eb | 7 | class TH1F; |
059c7c6b | 8 | class TH3F; |
9 | class TProfile3D; | |
10 | class TProfile2D; | |
11 | class TH3D; | |
2dcdd4eb | 12 | // |
13 | // This class creates dN/deta for the FMD from the analysis objects. | |
14 | // The contents of this class should probably go into a task at some point | |
15 | // | |
c5058a61 | 16 | |
17 | class AliFMDDndeta : public TObject | |
18 | { | |
19 | ||
20 | public: | |
21 | AliFMDDndeta(); | |
ae26bdd7 | 22 | AliFMDDndeta(const AliFMDDndeta& o) : |
2b23122b | 23 | TObject(), |
24 | fList(0), | |
ae26bdd7 | 25 | fMultList(), |
26 | fNbinsToCut(o.fNbinsToCut), | |
2dcdd4eb | 27 | fVtxCut1(o.fVtxCut1), |
28 | fVtxCut2(o.fVtxCut2), | |
ae26bdd7 | 29 | fIsInit(o.fIsInit), |
30 | fIsGenerated(), | |
31 | fPrimEvents(o.fPrimEvents), | |
32 | fEvents(o.fEvents), | |
059c7c6b | 33 | fPrimdNdeta(fPrimdNdeta), |
34 | fDrawAll(kFALSE) | |
ae26bdd7 | 35 | {} |
36 | ||
37 | AliFMDDndeta& operator=(const AliFMDDndeta& /*o*/) | |
38 | { | |
39 | // Assignment operator | |
40 | ||
41 | return (*this); | |
42 | } | |
c5058a61 | 43 | |
059c7c6b | 44 | enum Analysis {kHits, kHitsTrVtx, kMult, kMultTrVtx, kMultNSD}; |
c5058a61 | 45 | |
70d74659 | 46 | |
47 | ||
2dcdd4eb | 48 | void Init(const Char_t* filename); |
49 | void Init(TList* list); | |
c5058a61 | 50 | void GenerateMult(Analysis what); |
541c19ed | 51 | void DrawDndeta(Analysis what, Int_t rebin = 1, Bool_t realdata = kFALSE, TString filename = "none"); |
c5058a61 | 52 | void SetNbinsToCut(Int_t nbins) {fNbinsToCut = nbins;} |
2dcdd4eb | 53 | void SetVtxCut1(Int_t vtxcut) {fVtxCut1 = vtxcut;} |
54 | void SetVtxCut2(Int_t vtxcut) {fVtxCut2 = vtxcut;} | |
059c7c6b | 55 | void SetDrawAll(Bool_t drawall) {fDrawAll = drawall;} |
7e2bf482 | 56 | void CreateSharingEfficiency(const Char_t* filename, Bool_t store = kFALSE); |
70d74659 | 57 | TList* GetMultList(Analysis what) {return fMultList[what];} |
c5058a61 | 58 | private: |
2dcdd4eb | 59 | void GenerateHits(Analysis what); |
c5058a61 | 60 | void SetNames(Analysis what); |
61 | const char* GetAnalysisName(Analysis what, UShort_t det, Char_t ring, Int_t vtxbin); | |
62 | const char* GetPrimName(Analysis what, UShort_t det, Char_t ring, Int_t vtxbin); | |
2dcdd4eb | 63 | void RebinHistogram(TH1F* hist, Int_t rebin); |
70d74659 | 64 | TList* fList; // A list of input histograms |
059c7c6b | 65 | TList* fMultList[5]; // A list of mult histograms |
70d74659 | 66 | Int_t fNbinsToCut; // The number of bins to cut |
67 | Int_t fVtxCut1; // Vtx low | |
68 | Int_t fVtxCut2; // Vtx high | |
69 | Bool_t fIsInit; // Are we init ? | |
059c7c6b | 70 | Bool_t fIsGenerated[5]; // Have we generated ? |
2dcdd4eb | 71 | TString fPrimEvents; // Number of prim events |
72 | TString fEvents; // Number of events | |
73 | TString fPrimdNdeta; // the primary dNdeta from MC | |
059c7c6b | 74 | Char_t* fAnalysisNames[5]; // Names of analysis |
75 | // TProfile3D* fDataObject; // New data object | |
76 | Bool_t fDrawAll; //Draw relevant or all | |
77 | //TH3D* fDataObject; // New data object | |
78 | ||
c5058a61 | 79 | ClassDef(AliFMDDndeta,2); |
80 | }; | |
81 | ||
82 | ||
83 | #endif | |
84 | // Local Variables: | |
85 | // mode: C++ | |
86 | // End Variables; |