2 * Draw the before/after merging image for a single ring
8 * @ingroup pwg2_forward_scripts_qa
11 DrawRingBeforeAfter(TList* p, UShort_t d, Char_t r)
15 TList* ring = static_cast<TList*>(p->FindObject(Form("FMD%d%c",d,r)));
17 Error("DrawBeforeAfter", "List FMD%d%c not found in %s",d,r,p->GetName());
21 TH2* corr = static_cast<TH2D*>(ring->FindObject("beforeAfter"));
23 Error("DrawRingBeforeAfter", "Histogram esdEloss not found in FMD%d%c",
28 gPad->SetFillColor(0);
29 corr->SetTitle(Form("FMD%d%c",d,r));
32 corr->GetXaxis()->SetRangeUser(-.5, 4);
33 corr->GetYaxis()->SetRangeUser(-.5, 4);
39 * Draw the before/after sharing image for all rings
43 * @ingroup pwg2_forward_scripts_qa
46 DrawBeforeAfter(const char* filename="forward.root")
48 gStyle->SetPalette(1);
50 gStyle->SetOptStat(0);
51 gStyle->SetOptTitle(1);
52 gStyle->SetTitleW(.4);
53 gStyle->SetTitleH(.1);
54 gStyle->SetTitleColor(0);
55 gStyle->SetTitleStyle(0);
56 gStyle->SetTitleBorderSize(0);
57 gStyle->SetTitleX(.6);
59 TFile* file = TFile::Open(filename, "READ");
61 Error("DrawBeforeAfter", "failed to open %s", filename);
65 TList* forward = static_cast<TList*>(file->Get("Forward"));
67 Error("DrawBeforeAfter", "List Forward not found in %s", filename);
71 TList* sf = static_cast<TList*>(forward->FindObject("fmdSharingFilter"));
73 Error("DrawBeforeAfter", "List fmdSharingFilter not found in Forward");
77 TCanvas* c = new TCanvas("beforeAfter",
78 "Signals before and after merging", 900, 700);
81 c->SetLeftMargin(0.15);
82 c->SetRightMargin(0.02);
83 c->SetTopMargin(0.02);
84 c->Divide(3, 2, 0, 0);
86 c->cd(1); DrawRingBeforeAfter(sf, 1, 'I');
87 c->cd(2); DrawRingBeforeAfter(sf, 2, 'I');
88 c->cd(5); DrawRingBeforeAfter(sf, 2, 'O');
89 c->cd(3); DrawRingBeforeAfter(sf, 3, 'I');
90 c->cd(6); DrawRingBeforeAfter(sf, 3, 'O');
91 TVirtualPad* p = c->cd(4);
92 // p->SetTopMargin(0.05);
93 p->SetRightMargin(0.15);
95 TH2D* highCuts = static_cast<TH2D*>(sf->FindObject("highCuts"));
96 if (highCuts) highCuts->Draw("colz");