]>
Commit | Line | Data |
---|---|---|
9608df41 | 1 | /* $Id$ */ |
2 | ||
3 | #ifndef AliHighMultiplicitySelector_H | |
4 | #define AliHighMultiplicitySelector_H | |
5 | ||
6 | #include "AliSelectorRL.h" | |
7 | ||
8 | class TH1F; | |
9 | class TH2F; | |
10 | class TH1; | |
11 | class TH2; | |
12 | class TNtuple; | |
a9aed06c | 13 | class TGraph; |
14 | ||
15 | // | |
16 | // Selector that produces plots needed for the high multiplicity analysis with the | |
17 | // pixel detector | |
18 | // | |
9608df41 | 19 | |
20 | class AliHighMultiplicitySelector : public AliSelectorRL { | |
21 | public: | |
22 | AliHighMultiplicitySelector(); | |
23 | virtual ~AliHighMultiplicitySelector(); | |
24 | ||
25 | virtual void Init(TTree *tree); | |
26 | virtual void SlaveBegin(TTree *tree); | |
27 | virtual Bool_t Process(Long64_t entry); | |
28 | virtual Bool_t Notify(); | |
29 | virtual void SlaveTerminate(); | |
30 | virtual void Terminate(); | |
31 | ||
32 | void WriteHistograms(const char* filename = "highmult.root"); | |
33 | void ReadHistograms(const char* filename = "highmult.root"); | |
34 | void DrawHistograms(); | |
35 | void JPRPlots(); | |
f91bc12d | 36 | void Ntrigger(); |
a9aed06c | 37 | TGraph* IntFractRate(); |
9608df41 | 38 | |
39 | protected: | |
40 | void MakeGraphs(const char* title, TH1* xSection, TH2* fMvsL, Int_t limit); | |
f6093269 | 41 | void MakeGraphs2(const char* title, TH1* xSection, TH2* fMvsL); |
42 | ||
9608df41 | 43 | TH1* GetXSectionCut(TH1* xSection, TH2* multVsLayer, Int_t cut); |
f6093269 | 44 | TH1* GetTriggerEfficiency(TH2* multVsLayer, Int_t cut); |
9608df41 | 45 | |
a9aed06c | 46 | TH1F* fChipsLayer1; // fired chips in layer 1 |
47 | TH1F* fChipsLayer2; // fired chips in layer 2 | |
9608df41 | 48 | |
a9aed06c | 49 | TH2F* fL1vsL2; // layer1 hits vs. layer2 hits |
50 | TH2F* fMvsL1; // mult. vs. hits in layer 1 | |
51 | TH2F* fMvsL2; // mult. vs. hits in layer 2 | |
9608df41 | 52 | |
a9aed06c | 53 | TH2F* fChipsFired; // chips fired, module number vs. chip number |
9608df41 | 54 | |
55 | TNtuple* fPrimaryL1; // multiplicity vs. number of fired chips vs. number of chips fired by primaries | |
56 | TNtuple* fPrimaryL2; // multiplicity vs. number of fired chips vs. number of chips fired by primaries | |
57 | ||
a9aed06c | 58 | TH1F* fClusterZL1; // number of clusters as funtion of z in layer 1 |
59 | TH1F* fClusterZL2; // number of clusters as funtion of z in layer 2 | |
9608df41 | 60 | |
a9aed06c | 61 | TH2F* fClvsL1; // number of cluster vs. number of fired chips in layer 1 |
62 | TH2F* fClvsL2; // number of cluster vs. number of fired chips in layer 2 | |
9608df41 | 63 | |
a9aed06c | 64 | Bool_t fCentralRegion; // only consider the central region (two central modules) |
9608df41 | 65 | |
66 | private: | |
67 | AliHighMultiplicitySelector(const AliHighMultiplicitySelector&); | |
68 | AliHighMultiplicitySelector& operator=(const AliHighMultiplicitySelector&); | |
69 | ||
70 | ClassDef(AliHighMultiplicitySelector, 0); | |
71 | }; | |
72 | ||
73 | #endif |