CMS 3D CMS Logo

MEEEGeom.h
Go to the documentation of this file.
1 #ifndef CalibCalorimetry_EcalLaserAnalyzer_MEEEGeom_h
2 #define CalibCalorimetry_EcalLaserAnalyzer_MEEEGeom_h
3 
4 //
5 // Authors : Gautier Hamel de Monchenault and Julie Malcles, Saclay
6 //
7 
8 #include <vector>
9 #include <map>
10 #include <list>
11 
12 #include "TPolyLine.h"
13 #include "TGraph.h"
14 
15 class MEEEGeom {
16  // static functions
17 public:
19 
20  typedef int SuperCrysCoord;
21  typedef int CrysCoord;
22 
23  typedef std::pair<float, float> EtaPhiPoint;
24 
25  static int dee(SuperCrysCoord iX, SuperCrysCoord iY, int iz);
26  static int quadrant(SuperCrysCoord iX, SuperCrysCoord iY);
27  static int sector(SuperCrysCoord iX, SuperCrysCoord iY);
28  static int sm(SuperCrysCoord iX, SuperCrysCoord iY, int iz);
29  static int lmmod(SuperCrysCoord iX, SuperCrysCoord iY);
30  static int sc_in_quad(SuperCrysCoord iX, SuperCrysCoord iY);
31  static int sc(SuperCrysCoord iX, SuperCrysCoord iY);
32  static int dcc(SuperCrysCoord iX, SuperCrysCoord iY, int iz);
33  static int lmr(SuperCrysCoord iX, SuperCrysCoord iY, int iz);
34  static int side(SuperCrysCoord iX, SuperCrysCoord iY, int iz);
35 
36  static int crystal_in_sc(CrysCoord ix, CrysCoord iy);
37  static int crystal(CrysCoord ix, CrysCoord iy);
38 
39  static int dee(int ilmr);
40  static bool near(int ilmr);
41 
42  static TString smName(int ism);
43  static int smFromDcc(int idcc);
44  static int dccFromSm(int ism);
45 
46  static const bool pnTheory; // if true: theoretical PN cabling for all dees
47  static std::pair<int, int> pn(int dee, int ilmod);
48  static std::pair<int, int> memFromLmr(int ilmr);
49  static std::vector<int> lmmodFromLmr(int ilmr);
50  static int deeFromMem(int imem);
51  static int apdRefTower(int ilmr, int ilmmod);
52  static std::vector<int> apdRefChannels(int ilmmod);
53 
54  static TGraph* getGraphBoundary(int type, int num, int iz = -1, int xside = 0);
55  static void getBoundary(std::list<std::pair<float, float> >& l, int type, int num, int iz = -1, int xside = 0);
56 
57  static int sc_type(SuperCrysCoord iX, SuperCrysCoord iY);
58 
59  virtual ~MEEEGeom() {}
60 
61 protected:
62  //GHM ClassDef(MEEEGeom,0) // MEEEGeom -- Monitoring utility for survey of Ecal
63 };
64 
65 #endif
static std::pair< int, int > memFromLmr(int ilmr)
Definition: MEEEGeom.cc:1128
int CrysCoord
Definition: MEEEGeom.h:21
static int lmmod(SuperCrysCoord iX, SuperCrysCoord iY)
Definition: MEEEGeom.cc:112
static int crystal(CrysCoord ix, CrysCoord iy)
Definition: MEEEGeom.cc:372
static void getBoundary(std::list< std::pair< float, float > > &l, int type, int num, int iz=-1, int xside=0)
Definition: MEEEGeom.cc:447
static int apdRefTower(int ilmr, int ilmmod)
Definition: MEEEGeom.cc:1208
static int smFromDcc(int idcc)
Definition: MEEEGeom.cc:405
static int side(SuperCrysCoord iX, SuperCrysCoord iY, int iz)
Definition: MEEEGeom.cc:1155
static bool near(int ilmr)
Definition: MEEEGeom.cc:1150
static const bool pnTheory
Definition: MEEEGeom.h:46
static int dcc(SuperCrysCoord iX, SuperCrysCoord iY, int iz)
Definition: MEEEGeom.cc:225
static int sc_type(SuperCrysCoord iX, SuperCrysCoord iY)
Definition: MEEEGeom.cc:180
std::pair< float, float > EtaPhiPoint
Definition: MEEEGeom.h:23
virtual ~MEEEGeom()
Definition: MEEEGeom.h:59
static int sc_in_quad(SuperCrysCoord iX, SuperCrysCoord iY)
Definition: MEEEGeom.cc:146
static std::pair< int, int > pn(int dee, int ilmod)
Definition: MEEEGeom.cc:574
static int dccFromSm(int ism)
Definition: MEEEGeom.cc:399
static TString smName(int ism)
Definition: MEEEGeom.cc:388
static int sm(SuperCrysCoord iX, SuperCrysCoord iY, int iz)
Definition: MEEEGeom.cc:101
static int sector(SuperCrysCoord iX, SuperCrysCoord iY)
Definition: MEEEGeom.cc:33
static std::vector< int > lmmodFromLmr(int ilmr)
Definition: MEEEGeom.cc:1163
int SuperCrysCoord
Definition: MEEEGeom.h:20
static TGraph * getGraphBoundary(int type, int num, int iz=-1, int xside=0)
Definition: MEEEGeom.cc:423
ALPAKA_FN_ACC ALPAKA_FN_INLINE uint32_t ix(uint32_t id)
static int deeFromMem(int imem)
Definition: MEEEGeom.cc:558
static std::vector< int > apdRefChannels(int ilmmod)
Definition: MEEEGeom.cc:1364
static int crystal_in_sc(CrysCoord ix, CrysCoord iy)
Definition: MEEEGeom.cc:311
static int dee(SuperCrysCoord iX, SuperCrysCoord iY, int iz)
Definition: MEEEGeom.cc:292
ALPAKA_FN_ACC ALPAKA_FN_INLINE uint32_t iy(uint32_t id)
static int quadrant(SuperCrysCoord iX, SuperCrysCoord iY)
Definition: MEEEGeom.cc:14
int ism(int ieta, int iphi)
Definition: EcalPyUtils.cc:49
static int sc(SuperCrysCoord iX, SuperCrysCoord iY)
Definition: MEEEGeom.cc:215
static int lmr(SuperCrysCoord iX, SuperCrysCoord iY, int iz)
Definition: MEEEGeom.cc:254