Hall-D Software  alpha
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
ccal_hit_energy.C
Go to the documentation of this file.
1 // hnamepath: /ccal/hitOcc2D
2 // hnamepath: /ccal/hitN
3 // hnamepath: /ccal/hitETot
4 // hnamepath: /ccal/hitE2D
5 
6 {
7 
8  TDirectory *dir = (TDirectory*)gDirectory->FindObjectAny("ccal");
9  if(dir) dir->cd();
10 
11  TH2F* hitOcc2D = (TH2F*)gDirectory->FindObjectAny("hitOcc2D");
12  TH1I* hitN = (TH1I*)gDirectory->FindObjectAny("hitN");
13  TH1I* hitETot = (TH1I*)gDirectory->FindObjectAny("hitETot");
14  TH2F* hitE2D = (TH2F*)gDirectory->FindObjectAny("hitE2D");
15 
16  double nEvents = ( hitETot ? hitETot->GetEntries() : 0 );
17 
18  if(gPad == NULL){
19 
20  TCanvas *c1 = new TCanvas( "c1", "CCAL Monitor", 800, 800 );
21  c1->cd(0);
22  c1->Draw();
23  c1->Update();
24  }
25 
26  if( !gPad ) return;
27  TCanvas* c1 = gPad->GetCanvas();
28  c1->Divide( 2, 2 );
29 
30  if( hitN ){
31 
32  hitN->SetStats( 0 );
33  hitN->SetFillColor( kYellow-10 );
34  hitN->GetYaxis()->SetTitleOffset(1.4);
35  c1->cd( 1 );
36  hitN->Draw();
37  }
38 
39  if( hitETot ){
40 
41  hitETot->SetStats( 0 );
42  hitETot->SetFillColor( kYellow-10 );
43  hitETot->GetYaxis()->SetTitleOffset(1.55);
44  c1->cd( 2 );
45  hitETot->Draw();
46  }
47 
48  if( hitOcc2D ){
49 
50  TH2F* hitOcc2DAvg = (TH2F*)hitOcc2D->Clone( "hitOcc2DAvg" );
51 
52  hitOcc2DAvg->SetTitle( "CCAL Hit Occupancy per Event" );
53 
54  for( int x = 1; x <= hitOcc2DAvg->GetNbinsX(); ++x ){
55  for( int y = 1; y <= hitOcc2DAvg->GetNbinsY(); ++y ){
56 
57  hitOcc2DAvg->SetBinContent( x, y, hitOcc2DAvg->GetBinContent( x, y ) / nEvents );
58  }
59  }
60 
61  hitOcc2DAvg->SetStats( 0 );
62  c1->cd( 3 );
63  hitOcc2DAvg->Draw( "COLZ" );
64  }
65 
66  if( hitE2D && hitOcc2D ){
67 
68  TH2F* hitE2DAvg = (TH2F*)hitE2D->Clone( "hitE2DAvg" );
69  hitE2DAvg->Divide( hitOcc2D );
70  hitE2DAvg->SetStats( 0 );
71  hitE2DAvg->SetMinimum( 10 );
72  c1->cd( 4 );
73  hitE2DAvg->Draw( "COLZ" );
74  }
75 }
Double_t x[NCHANNELS]
Definition: st_tw_resols.C:39
#define y
Double_t c1[2][NMODULES]
Definition: tw_corr.C:68
TDirectory * dir
Definition: bcal_hist_eff.C:31