Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2021-12-08 08:15:41

0001 #ifndef CalibCalorimetry_EcalLaserAnalyzer_MEGeom_h
0002 #define CalibCalorimetry_EcalLaserAnalyzer_MEGeom_h
0003 
0004 //

0005 // Authors  : Gautier Hamel de Monchenault and Julie Malcles, Saclay

0006 //

0007 #include <vector>
0008 
0009 #include "MEEBGeom.h"
0010 #include "MEEEGeom.h"
0011 
0012 #include "TH2.h"
0013 #include "TCanvas.h"
0014 #include "TGraph.h"
0015 
0016 class MEChannel;
0017 
0018 class MEGeom {
0019   // static functions

0020 public:
0021   // histograms and boundaries

0022   static TH2* getHist(int ilmr, int unit);
0023 
0024   static TGraph* getBoundary(int ilmr, int unit);
0025   static void drawHist(int ilmr, int unit, TCanvas* canv = nullptr);
0026 
0027   // global 2D histogram

0028   static TH2* getGlobalHist(const char* name = nullptr);
0029   static void setBinGlobalHist(TH2* h, int ix, int iy, int iz, float val);
0030   static void drawGlobalBoundaries(int lineColor);
0031 
0032   virtual ~MEGeom() {}
0033 
0034 private:
0035   static const int _nbuf;
0036   static const int _nbinx;
0037   static const int _nbiny;
0038   static const float _xmin;
0039   static const float _xmax;
0040   static const float _ymin;
0041   static const float _ymax;
0042   static const TH2* _h;
0043 
0044   //GHM  ClassDef(MEGeom,0) // MEGeom -- Main geometry class

0045 };
0046 
0047 #endif