Hall-D Software  alpha
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Calibration/HLDetectorTiming/HistMacro_CalorimeterTiming.C
Go to the documentation of this file.
1 // hnamepath: /HLDetectorTiming/FCAL/FCALHit time
2 // hnamepath: /HLDetectorTiming/BCAL/BCALHit TDC time
3 // hnamepath: /HLDetectorTiming/BCAL/BCALHit Upstream Per Channel TDC-ADC Hit Time
4 // hnamepath: /HLDetectorTiming/BCAL/BCALHit Downstream Per Channel TDC-ADC Hit Time
5 
6 {
7  //Goto Path
8  TDirectory *locDirectory = (TDirectory*)gDirectory->FindObjectAny("HLDetectorTiming");
9  if(!locDirectory)
10  return;
11  locDirectory->cd();
12 
13  //Get Histograms
14  TH1I* FCAL_Timing = (TH1I*)gDirectory->Get("FCAL/FCALHit time");
15  TH1I* BCAL_Timing = (TH1I*)gDirectory->Get("BCAL/BCALHit TDC time");
16  TH2I* BCAL_U_TDCADC_Timing = (TH2I*)gDirectory->Get("BCAL/BCALHit Upstream Per Channel TDC-ADC Hit Time");
17  TH2I* BCAL_D_TDCADC_Timing = (TH2I*)gDirectory->Get("BCAL/BCALHit Downstream Per Channel TDC-ADC Hit Time");
18 
19  //Get/Make Canvas
20  TCanvas *locCanvas = NULL;
21  if(TVirtualPad::Pad() == NULL)
22  locCanvas = new TCanvas("CalorimeterTiming", "CalorimeterTiming", 1200, 800); //for testing
23  else
24  locCanvas = gPad->GetCanvas();
25  locCanvas->Divide(2, 2);
26 
27  //Draw
28  locCanvas->cd(1);
29  gPad->SetTicks();
30  gPad->SetGrid();
31  if(FCAL_Timing != NULL)
32  {
33  FCAL_Timing->Draw();
34  FCAL_Timing->SetFillColor(kGray);
35  }
36  else{
37  TPaveText *text = new TPaveText(0.1, 0.4, 0.9, 0.6);
38  text->AddText("No FCAL Hit Times");
39  text->Draw();
40  }
41 
42  locCanvas->cd(2);
43  gPad->SetTicks();
44  gPad->SetGrid();
45  if(BCAL_U_TDCADC_Timing != NULL)
46  {
47  BCAL_U_TDCADC_Timing->Draw("colz");
48  }
49  else{
50  TPaveText *text = new TPaveText(0.1, 0.4, 0.9, 0.6);
51  text->AddText("No Matched Upstream BCAL TDC/ADC Times");
52  text->Draw();
53  }
54 
55  locCanvas->cd(3);
56  gPad->SetTicks();
57  gPad->SetGrid();
58  if(BCAL_Timing != NULL)
59  {
60  BCAL_Timing->Draw();
61  BCAL_Timing->SetFillColor(kGray);
62  }
63  else{
64  TPaveText *text = new TPaveText(0.1, 0.4, 0.9, 0.6);
65  text->AddText("No BCAL TDC Times");
66  text->Draw();
67  }
68 
69  locCanvas->cd(4);
70  gPad->SetTicks();
71  gPad->SetGrid();
72  if(BCAL_D_TDCADC_Timing != NULL)
73  {
74  BCAL_D_TDCADC_Timing->Draw("colz");
75  }
76  else{
77  TPaveText *text = new TPaveText(0.1, 0.4, 0.9, 0.6);
78  text->AddText("No Matched BCAL Downstream TDC/ADC Times");
79  text->Draw();
80  }
81 }
82 
TDirectory * locDirectory
TCanvas * locCanvas
char text[100]