Back to home page

EIC code displayed by LXR

 
 

    


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