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