File indexing completed on 2025-06-08 07:53:36
0001 #ifndef CALIBSUMMARY_H
0002 #define CALIBSUMMARY_H
0003
0004 #include "TObject.h"
0005 #include "TString.h"
0006 #include "TH1D.h"
0007 #include "TH2D.h"
0008 #include "TProfile.h"
0009 #include "TGraphErrors.h"
0010 #include "TF1.h"
0011 #include "TPad.h"
0012 #include "TCanvas.h"
0013 #include "TLegend.h"
0014 #include "TFile.h"
0015 #include "Calib.h"
0016
0017 class CalibSummary: public TObject{
0018
0019 public:
0020 CalibSummary():TObject(){}
0021 CalibSummary(int id, double v, int ext = 0):TObject()
0022 {
0023 RunNr = id;
0024 Voltage = v;
0025 hHGped = TH1D(Form("hMeanPedHG_%i",id),"; #mu_{noise, HG} (arb. units); counts ", 500, -0.5, 500-0.5);
0026 hHGpedwidth = TH1D(Form("hMeanPedHGwidth_%i",id),"; #sigma_{noise, HG} (arb. units); counts ", 400, -0.5*50/400, 50-(0.5*50/400));
0027 hLGped = TH1D(Form("hMeanPedLG_%i",id),"; #mu_{noise, LG} (arb. units); counts ", 500, -0.5, 500-0.5);
0028 hLGpedwidth = TH1D(Form("hMeanPedLGwidth_%i",id),"; #sigma_{noise, LG} (arb. units); counts ", 400, -0.5*20/400, 20-(0.5*20/400));
0029 hHGscale = TH1D(Form("hHGScale_%i",id),";Max_{HG} (arb. units) ; counts ", 2000, -0.25, 1000-0.25);
0030 hHGscalewidth = TH1D(Form("hHGScalewidth_%i",id),";Width_{HG} (arb. units) ; counts ", 2000, -0.25, 1000-0.25);
0031 hLGscale = TH1D(Form("hLGScale_%i",id),";Max_{LG} (arb. units) ; counts ", 2000, -0.5*250/2000, 250-(0.5*250/2000));
0032 hLGscaleCalc = TH1D(Form("hLGScaleCalc_%i",id),";Max_{LG,calc} (arb. units) ; counts ", 2000, -0.5*250/2000, 250-(0.5*250/2000));
0033 hLGscalewidth = TH1D(Form("hHGScalewidth_%i",id),";Width_{LG} (arb. units) ; counts ", 2000, -0.5*250/2000, 250-(0.5*250/2000));
0034 hLGHGcorr = TH1D(Form("hLGHGCorr_%i",id),"; a_{LG-HG} (arb. units) ; counts ", 400, 0, 20);
0035 hLGHGOffcorr = TH1D(Form("hLGHGOffCorr_%i",id),"; b_{LG-HG} (arb. units) ; counts ", 1000, -200, 100);
0036 hHGLGcorr = TH1D(Form("hHGLGCorr_%i",id),"; a_{HG-LG} (arb. units) ; counts ", 400, 0., 1.);
0037 hHGLGOffcorr = TH1D(Form("hHGLGOffCorr_%i",id),"; b_{HG-LG} (arb. units) ; counts ", 1000, -100., 100.);
0038 }
0039 ~CalibSummary(){}
0040
0041 bool Analyse();
0042 bool Fill(const TileCalib&);
0043 bool Write(TFile*);
0044
0045
0046 inline TH1D* GetHGped() {return &hHGped;};
0047 inline TH1D* GetHGpedwidth() {return &hHGpedwidth;};
0048 inline TH1D* GetLGped() {return &hLGped;};
0049 inline TH1D* GetLGpedwidth() {return &hLGpedwidth;};
0050 inline TH1D* GetHGScale() {return &hHGscale;};
0051 inline TH1D* GetHGScalewidth() {return &hHGscalewidth;};
0052 inline TH1D* GetLGScale() {return &hLGscale;};
0053 inline TH1D* GetLGScaleCalc() {return &hLGscaleCalc;};
0054 inline TH1D* GetLGScalewidth() {return &hLGscalewidth;};
0055 inline TH1D* GetLGHGcorr() {return &hLGHGcorr;};
0056 inline TH1D* GetLGHGOffcorr() {return &hLGHGOffcorr;};
0057 inline TH1D* GetHGLGcorr() {return &hHGLGcorr;};
0058 inline TH1D* GetHGLGOffcorr() {return &hHGLGOffcorr;};
0059 inline double GetVoltage() {return Voltage;};
0060
0061 protected:
0062 int RunNr ;
0063 double Voltage ;
0064 TH1D hLGped ;
0065 TH1D hLGpedwidth ;
0066 TH1D hHGped ;
0067 TH1D hHGpedwidth ;
0068 TH1D hLGscale ;
0069 TH1D hLGscaleCalc ;
0070 TH1D hLGscalewidth ;
0071 TH1D hHGscale ;
0072 TH1D hHGscalewidth ;
0073 TH1D hHGLGcorr ;
0074 TH1D hHGLGOffcorr ;
0075 TH1D hLGHGcorr ;
0076 TH1D hLGHGOffcorr ;
0077
0078 ClassDef(CalibSummary,2);
0079 };
0080
0081 #endif