CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
CSCSectorReceiverLUT.h
Go to the documentation of this file.
1 #ifndef L1Trigger_CSCSectorReceiverLUT_h
2 #define L1Trigger_CSCSectorReceiverLUT_h
3 
15 
16 class CSCLayer;
17 
19 {
20  public:
21 
22  CSCSectorReceiverLUT(int endcap, int sector, int subsector, int station, const edm::ParameterSet &pset, bool TMB07);
25 
27 
29 
32  lclphidat localPhi(int strip, int pattern, int quality, int lr) const;
33  lclphidat localPhi(unsigned address) const;
34  lclphidat localPhi(lclphiadd address) const;
35 
36  gblphidat globalPhiME(int phi_local, int wire_group, int cscid) const;
37  gblphidat globalPhiME(unsigned address) const;
38  gblphidat globalPhiME(gblphiadd address) const;
39 
40  gblphidat globalPhiMB(int phi_local,int wire_group, int cscid) const;
41  gblphidat globalPhiMB(unsigned address) const;
42  gblphidat globalPhiMB(gblphiadd address) const;
43 
44  gbletadat globalEtaME(int phi_bend, int phi_local, int wire_group, int cscid) const;
45  gbletadat globalEtaME(unsigned address) const;
46  gbletadat globalEtaME(gbletaadd address) const;
47 
49  std::string encodeFileIndex() const;
50 
51  private:
53 
55  lclphidat calcLocalPhi(const lclphiadd& address) const;
56 
58  gblphidat calcGlobalPhiME(const gblphiadd& address) const;
59  gblphidat calcGlobalPhiMB(const gblphidat& me_gphi_data) const;
60  double getGlobalPhiValue(const CSCLayer* thelayer, const unsigned& strip, const unsigned& wire_group) const;
61 
63  gbletadat calcGlobalEtaME(const gbletaadd& address) const;
64  double getGlobalEtaValue(const unsigned& cscid, const unsigned& wire_group, const unsigned& phi_local) const;
65 
66  void fillLocalPhiLUT();
67 
72  bool LUTsFromFile; // readLUTs from file or generate on the fly
73  bool useMiniLUTs; // if useMiniLUTs is set to true, the code will generate LUTs using the CSCSectorReceiverMiniLUTs class -- BJ
74  bool isBinary; // if readLUTs is set to true, are the LUT files binary or ascii format
75 
76  bool isTMB07; // use the TMB 2007 patterns or the older set of parameters
77 
80  void readLUTsFromFile();
81 
82  static bool me_lcl_phi_loaded;
86 };
87 
88 #endif
char * address
Definition: mlp_lapack.h:14
void strip(std::string &input, const std::string &blanks=" \n\t")
Definition: stringTools.cc:16
gbletadat calcGlobalEtaME(const gbletaadd &address) const
Global Eta LUT.
std::string encodeFileIndex() const
Helpers.
gbletadat globalEtaME(int phi_bend, int phi_local, int wire_group, int cscid) const
class global_phi_address gblphiadd
edm::FileInPath mb_gbl_phi_file
CSCSectorReceiverLUT & operator=(const CSCSectorReceiverLUT &)
gblphidat globalPhiMB(int phi_local, int wire_group, int cscid) const
double getGlobalPhiValue(const CSCLayer *thelayer, const unsigned &strip, const unsigned &wire_group) const
double getGlobalEtaValue(const unsigned &cscid, const unsigned &wire_group, const unsigned &phi_local) const
lclphidat localPhi(int strip, int pattern, int quality, int lr) const
Geometry Lookup Tables.
edm::FileInPath me_gbl_phi_file
edm::FileInPath me_lcl_phi_file
CSCSectorReceiverLUT(int endcap, int sector, int subsector, int station, const edm::ParameterSet &pset, bool TMB07)
edm::FileInPath me_gbl_eta_file
static lclphidat * me_lcl_phi
class global_phi_data gblphidat
class local_phi_address lclphiadd
class local_phi_data lclphidat
Data Types.
gblphidat calcGlobalPhiME(const gblphiadd &address) const
Global Phi LUT.
class global_eta_address gbletaadd
lclphidat calcLocalPhi(const lclphiadd &address) const
Local Phi LUT.
class global_eta_data gbletadat
gblphidat calcGlobalPhiMB(const gblphidat &me_gphi_data) const
gblphidat globalPhiME(int phi_local, int wire_group, int cscid) const