CMS 3D CMS Logo

MEEEGeom.h
Go to the documentation of this file.
1 #ifndef MEEEGeom_hh
2 #define MEEEGeom_hh
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 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
MEEEGeom::deeFromMem
static int deeFromMem(int imem)
Definition: MEEEGeom.cc:558
MEEEGeom::pnTheory
static bool pnTheory
Definition: MEEEGeom.h:46
MEEEGeom::sc
static int sc(SuperCrysCoord iX, SuperCrysCoord iY)
Definition: MEEEGeom.cc:215
MEEEGeom::near
static bool near(int ilmr)
Definition: MEEEGeom.cc:1150
MEEEGeom::crystal
static int crystal(CrysCoord ix, CrysCoord iy)
Definition: MEEEGeom.cc:372
MEEEGeom::iDee
Definition: MEEEGeom.h:18
MEEEGeom::iCrystal
Definition: MEEEGeom.h:18
MEEEGeom::dccFromSm
static int dccFromSm(int ism)
Definition: MEEEGeom.cc:399
MEEEGeom::iSuperCrystal
Definition: MEEEGeom.h:18
MEEEGeom::apdRefTower
static int apdRefTower(int ilmr, int ilmmod)
Definition: MEEEGeom.cc:1208
MEEEGeom::iLMModule
Definition: MEEEGeom.h:18
MEEEGeom::EtaPhiPoint
std::pair< float, float > EtaPhiPoint
Definition: MEEEGeom.h:23
MEEEGeom::sm
static int sm(SuperCrysCoord iX, SuperCrysCoord iY, int iz)
Definition: MEEEGeom.cc:101
MEEEGeom::dcc
static int dcc(SuperCrysCoord iX, SuperCrysCoord iY, int iz)
Definition: MEEEGeom.cc:225
MEEEGeom::apdRefChannels
static std::vector< int > apdRefChannels(int ilmmod)
Definition: MEEEGeom.cc:1364
MEEEGeom::pn
static std::pair< int, int > pn(int dee, int ilmod)
Definition: MEEEGeom.cc:574
MEEEGeom::smFromDcc
static int smFromDcc(int idcc)
Definition: MEEEGeom.cc:405
MEEEGeom::sc_type
static int sc_type(SuperCrysCoord iX, SuperCrysCoord iY)
Definition: MEEEGeom.cc:180
MEEEGeom::dee
static int dee(SuperCrysCoord iX, SuperCrysCoord iY, int iz)
Definition: MEEEGeom.cc:292
MEEEGeom::iEcalEndCap
Definition: MEEEGeom.h:18
MEEEGeom::quadrant
static int quadrant(SuperCrysCoord iX, SuperCrysCoord iY)
Definition: MEEEGeom.cc:14
MEEEGeom
Definition: MEEEGeom.h:15
MEEEGeom::getGraphBoundary
static TGraph * getGraphBoundary(int type, int num, int iz=-1, int xside=0)
Definition: MEEEGeom.cc:423
type
type
Definition: SiPixelVCal_PayloadInspector.cc:37
MEEEGeom::iDCC
Definition: MEEEGeom.h:18
MEEEGeom::~MEEEGeom
virtual ~MEEEGeom()
Definition: MEEEGeom.h:59
MEEEGeom::iLMRegion
Definition: MEEEGeom.h:18
MEEEGeom::lmmodFromLmr
static std::vector< int > lmmodFromLmr(int ilmr)
Definition: MEEEGeom.cc:1163
MEEEGeom::smName
static TString smName(int ism)
Definition: MEEEGeom.cc:388
MEEEGeom::memFromLmr
static std::pair< int, int > memFromLmr(int ilmr)
Definition: MEEEGeom.cc:1128
EgammaValidation_cff.num
num
Definition: EgammaValidation_cff.py:34
cmsLHEtoEOSManager.l
l
Definition: cmsLHEtoEOSManager.py:204
MEEEGeom::iSector
Definition: MEEEGeom.h:18
MEEEGeom::sc_in_quad
static int sc_in_quad(SuperCrysCoord iX, SuperCrysCoord iY)
Definition: MEEEGeom.cc:146
MEEEGeom::lmmod
static int lmmod(SuperCrysCoord iX, SuperCrysCoord iY)
Definition: MEEEGeom.cc:112
MEEEGeom::lmr
static int lmr(SuperCrysCoord iX, SuperCrysCoord iY, int iz)
Definition: MEEEGeom.cc:254
ecalpyutils::ism
int ism(int ieta, int iphi)
Definition: EcalPyUtils.cc:51
MEEEGeom::iQuadrant
Definition: MEEEGeom.h:18
MEEEGeom::sector
static int sector(SuperCrysCoord iX, SuperCrysCoord iY)
Definition: MEEEGeom.cc:33
MEEEGeom::EEUnit
EEUnit
Definition: MEEEGeom.h:18
MEEEGeom::side
static int side(SuperCrysCoord iX, SuperCrysCoord iY, int iz)
Definition: MEEEGeom.cc:1155
MEEEGeom::crystal_in_sc
static int crystal_in_sc(CrysCoord ix, CrysCoord iy)
Definition: MEEEGeom.cc:311
MEEEGeom::SuperCrysCoord
int SuperCrysCoord
Definition: MEEEGeom.h:20
MEEEGeom::getBoundary
static void getBoundary(std::list< std::pair< float, float > > &l, int type, int num, int iz=-1, int xside=0)
Definition: MEEEGeom.cc:447
MEEEGeom::CrysCoord
int CrysCoord
Definition: MEEEGeom.h:21