]>
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(); | |
d1594f8a | 36 | void Ntrigger(Bool_t relative = kTRUE); |
a9aed06c | 37 | TGraph* IntFractRate(); |
d1594f8a | 38 | void Contamination(); |
144ff489 | 39 | void Contamination2(); |
69b09e3b | 40 | void Contamination3(); |
d1594f8a | 41 | void MBComparison(); |
9608df41 | 42 | |
43 | protected: | |
44 | void MakeGraphs(const char* title, TH1* xSection, TH2* fMvsL, Int_t limit); | |
f6093269 | 45 | void MakeGraphs2(const char* title, TH1* xSection, TH2* fMvsL); |
46 | ||
9608df41 | 47 | TH1* GetXSectionCut(TH1* xSection, TH2* multVsLayer, Int_t cut); |
f6093269 | 48 | TH1* GetTriggerEfficiency(TH2* multVsLayer, Int_t cut); |
9608df41 | 49 | |
a9aed06c | 50 | TH1F* fChipsLayer1; // fired chips in layer 1 |
51 | TH1F* fChipsLayer2; // fired chips in layer 2 | |
9608df41 | 52 | |
a9aed06c | 53 | TH2F* fL1vsL2; // layer1 hits vs. layer2 hits |
54 | TH2F* fMvsL1; // mult. vs. hits in layer 1 | |
55 | TH2F* fMvsL2; // mult. vs. hits in layer 2 | |
9608df41 | 56 | |
a9aed06c | 57 | TH2F* fChipsFired; // chips fired, module number vs. chip number |
9608df41 | 58 | |
59 | TNtuple* fPrimaryL1; // multiplicity vs. number of fired chips vs. number of chips fired by primaries | |
60 | TNtuple* fPrimaryL2; // multiplicity vs. number of fired chips vs. number of chips fired by primaries | |
61 | ||
a9aed06c | 62 | TH1F* fClusterZL1; // number of clusters as funtion of z in layer 1 |
63 | TH1F* fClusterZL2; // number of clusters as funtion of z in layer 2 | |
9608df41 | 64 | |
a9aed06c | 65 | TH2F* fClvsL1; // number of cluster vs. number of fired chips in layer 1 |
66 | TH2F* fClvsL2; // number of cluster vs. number of fired chips in layer 2 | |
9608df41 | 67 | |
a9aed06c | 68 | Bool_t fCentralRegion; // only consider the central region (two central modules) |
9608df41 | 69 | |
70 | private: | |
71 | AliHighMultiplicitySelector(const AliHighMultiplicitySelector&); | |
72 | AliHighMultiplicitySelector& operator=(const AliHighMultiplicitySelector&); | |
73 | ||
74 | ClassDef(AliHighMultiplicitySelector, 0); | |
75 | }; | |
76 | ||
77 | #endif |