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