17 #include "TPaveStats.h" 27 EcalSRSettingsSummaryPlot():
32 bool fill(
const std::vector<std::tuple<cond::Time_t, cond::Hash> >& iovs)
override {
33 const int maxInCol=27;
35 auto iov=iovs.front();
37 unsigned int run=std::get<0> (iov);
49 gridRows=(NbRows<=maxInCol)?NbRows:maxInCol;
50 offset=ceil(1.0*NbRows/maxInCol);
53 align =
new TH2F(
"Ecal SR Settings Summary",
"ebDccAdcToGeV eeDccAdcToGeV Rows# srpLowInterestChannelZS srpHighInterestChannelZS",
54 NbColumns, 0, NbColumns, gridRows, 0, gridRows);
56 double row = gridRows - 0.5;
63 for(
int i=0;
i<gridRows;
i++){
64 align->Fill(2.5, gridRows-
i-0.5,
i+1);
71 align->Fill(column, row, *it);
74 column=floor(1.0*cnt/maxInCol)+3.5;
75 row=(row==0.5?(gridRows-0.5):row-1);
85 align->Fill(column+offset, row, *it);
88 column=floor(1.0*cnt/maxInCol)+3.5;
89 row=(row==0.5?(gridRows-0.5):row-1);
95 gStyle->SetPalette(1);
96 gStyle->SetOptStat(0);
97 TCanvas
canvas(
"CC map",
"CC map", 1000, 1000);
101 t1.SetTextSize(0.05);
103 t1.DrawLatex(0.5, 0.96,Form(
"Ecal SRSettings Summary, IOV %i", run));
106 TPad* pad =
new TPad(
"pad",
"pad", 0.0, 0.0, 1.0, 0.94);
113 align->GetXaxis()->SetTickLength(0.);
114 align->GetXaxis()->SetLabelSize(0.);
115 align->GetYaxis()->SetTickLength(0.);
116 align->GetYaxis()->SetLabelSize(0.);
119 canvas.SaveAs(ImageName.c_str());
std::shared_ptr< PayloadType > fetchPayload(const cond::Hash &payloadHash)
std::vector< float > srpHighInterestChannelZS_
#define PAYLOAD_INSPECTOR_CLASS(CLASS_NAME)
virtual bool fill(const std::vector< std::tuple< cond::Time_t, cond::Hash > > &iovs)=0
#define PAYLOAD_INSPECTOR_MODULE(PAYLOAD_TYPENAME)
void setSingleIov(bool flag)
float ebDccAdcToGeV_
ADC to GeV conversion factor used in ZS filter for EB.
std::vector< float > srpLowInterestChannelZS_
float eeDccAdcToGeV_
ADC to GeV conversion factor used in ZS filter for EE.
void drawTable(int nbRows, int nbColumns)