Hall-D Software  alpha
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
FDC_P3_pseudo_occupancy.C
Go to the documentation of this file.
1 
2 // The following are special comments used by RootSpy to know
3 // which histograms to fetch for the macro.
4 //
5 // hnamepath: /FDC/fdc_num_events
6 // hnamepath: /FDC/fdc_occ_plane_12
7 // hnamepath: /FDC/fdc_occ_plane_13
8 // hnamepath: /FDC/fdc_occ_plane_14
9 // hnamepath: /FDC/fdc_occ_plane_15
10 // hnamepath: /FDC/fdc_occ_plane_16
11 // hnamepath: /FDC/fdc_occ_plane_17
12 
13 {
14  // RootSpy saves the current directory and style before
15  // calling the macro and restores it after so it is OK to
16  // change them and not change them back.
17  TDirectory *savedir = gDirectory;
18  TDirectory *dir = (TDirectory*)gDirectory->FindObjectAny("FDC");
19  if(dir) dir->cd();
20 
21  TH2F *fdc_occ_cell_1 = (TH2F*)gDirectory->FindObjectAny("fdc_occ_plane_12");
22  TH2F *fdc_occ_cell_2 = (TH2F*)gDirectory->FindObjectAny("fdc_occ_plane_13");
23  TH2F *fdc_occ_cell_3 = (TH2F*)gDirectory->FindObjectAny("fdc_occ_plane_14");
24  TH2F *fdc_occ_cell_4 = (TH2F*)gDirectory->FindObjectAny("fdc_occ_plane_15");
25  TH2F *fdc_occ_cell_5 = (TH2F*)gDirectory->FindObjectAny("fdc_occ_plane_16");
26  TH2F *fdc_occ_cell_6 = (TH2F*)gDirectory->FindObjectAny("fdc_occ_plane_17");
27 
28  double Nevents = 1.0;
29  TH1I *fdc_num_events = (TH1I*)gDirectory->FindObjectAny("fdc_num_events");
30  if(fdc_num_events) Nevents = (double)fdc_num_events->GetBinContent(1);
31 
32  // Just for testing
33  if(gPad == NULL){
34  TCanvas *c1 = new TCanvas("c1");
35  c1->cd(0);
36  c1->Draw();
37  c1->Update();
38  }
39  if(!gPad) {savedir->cd(); return;}
40 
41  TCanvas *c1 = gPad->GetCanvas();
42  c1->cd(0);
43 
44  c1->Divide(3,2);
45 
46  TVirtualPad *pad1 = c1->cd(1);
47  pad1->SetTicks();
48  pad1->SetLogz();
49  pad1->SetLeftMargin(0.15);
50  pad1->SetRightMargin(0.15);
51  if(fdc_occ_cell_1){
52  fdc_occ_cell_1->SetStats(0);
53  fdc_occ_cell_1->Scale(1./Nevents);
54  fdc_occ_cell_1->Draw("colz");
55  }
56 
57  TVirtualPad *pad2 = c1->cd(2);
58  pad2->SetTicks();
59  pad2->SetLogz();
60  pad2->SetLeftMargin(0.15);
61  pad2->SetRightMargin(0.15);
62  if(fdc_occ_cell_2){
63  fdc_occ_cell_2->SetStats(0);
64  fdc_occ_cell_2->Scale(1./Nevents);
65  fdc_occ_cell_2->Draw("colz");
66  }
67 
68  TVirtualPad *pad3 = c1->cd(3);
69  pad3->SetTicks();
70  pad3->SetLogz();
71  pad3->SetLeftMargin(0.15);
72  pad3->SetRightMargin(0.15);
73  if(fdc_occ_cell_3){
74  fdc_occ_cell_3->SetStats(0);
75  fdc_occ_cell_3->Scale(1./Nevents);
76  fdc_occ_cell_3->Draw("colz");
77  }
78 
79  TVirtualPad *pad4 = c1->cd(4);
80  pad4->SetTicks();
81  pad4->SetLogz();
82  pad4->SetLeftMargin(0.15);
83  pad4->SetRightMargin(0.15);
84  if(fdc_occ_cell_4){
85  fdc_occ_cell_4->SetStats(0);
86  fdc_occ_cell_4->Scale(1./Nevents);
87  fdc_occ_cell_4->Draw("colz");
88  }
89 
90  TVirtualPad *pad5 = c1->cd(5);
91  pad5->SetTicks();
92  pad5->SetLogz();
93  pad5->SetLeftMargin(0.15);
94  pad5->SetRightMargin(0.15);
95  if(fdc_occ_cell_5){
96  fdc_occ_cell_5->SetStats(0);
97  fdc_occ_cell_5->Scale(1./Nevents);
98  fdc_occ_cell_5->Draw("colz");
99  }
100 
101  TVirtualPad *pad6 = c1->cd(6);
102  pad6->SetTicks();
103  pad6->SetLogz();
104  pad6->SetLeftMargin(0.15);
105  pad6->SetRightMargin(0.15);
106  if(fdc_occ_cell_6){
107  fdc_occ_cell_6->SetStats(0);
108  fdc_occ_cell_6->Scale(1./Nevents);
109  fdc_occ_cell_6->Draw("colz");
110  }
111 
112 }
113 
114 
TH1I * fdc_num_events
Definition: FDC_occupancy.C:30
TVirtualPad * pad4
TVirtualPad * pad1
Double_t c1[2][NMODULES]
Definition: tw_corr.C:68
double Nevents
TDirectory * savedir
TVirtualPad * pad6
TVirtualPad * pad5
TDirectory * dir
Definition: bcal_hist_eff.C:31
TVirtualPad * pad3
TVirtualPad * pad2