Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2023-03-17 11:10:50

0001 #include <L1Trigger/CSCTrackFinder/interface/CSCTrackFinderDataTypes.h>
0002 
0003 #ifndef L1Trigger_CSCSectorReceiverMiniLUT_h
0004 #define L1Trigger_CSCSectorReceiverMiniLUT_h
0005 
0006 /**
0007  * \class CSCSectorReceiverMiniLUT
0008  * \author Brett Jackson
0009  *
0010  * Provides a new way of defining the Lookup tables used by the core.
0011  * Defines the lookup tables as parameterized functions in order to save
0012  * on memory usage when compared to the current standard definitions of LUTs
0013  */
0014 
0015 class CSCSectorReceiverMiniLUT {
0016 public:
0017   static lclphidat calcLocalPhiMini(unsigned theadd, const bool gangedME1a);
0018   static global_eta_data calcGlobalEtaMEMini(unsigned short endcap,
0019                                              unsigned short sector,
0020                                              unsigned short station,
0021                                              unsigned short subsector,
0022                                              unsigned theadd,
0023                                              const bool gangedME1a);
0024   static global_phi_data calcGlobalPhiMEMini(unsigned short endcap,
0025                                              unsigned short sector,
0026                                              unsigned short station,
0027                                              unsigned short subsector,
0028                                              unsigned theadd,
0029                                              const bool gangedME1a);
0030   static global_phi_data calcGlobalPhiMBMini(
0031       unsigned short endcap, unsigned short sector, unsigned short subsector, unsigned theadd, const bool gangedME1a);
0032 
0033 private:
0034   static const float lcl_phi_param0[1 << 4];
0035   static const float lcl_phi_param1;
0036 
0037   static const float gbl_eta_params[2][6][4][2][4][9]
0038                                    [3];  // [endcap][sector][station][subsector][localPhi][cscID][param 0, 1, or 2]
0039   static const unsigned short int
0040       gbl_eta_bounds[2][6][4][2][4][9][2];  // [endcap][sector][station][subsector][localPhi][cscID][0=min, 1=max]
0041 
0042   static const float gbl_phi_me_params[2][6][4][2][9][2];  // [endcap][sector][station][subsector][cscID][param 0 or 1]
0043 
0044   static const float gbl_phi_mb_params[2][6][2][9][2];  // [endcap][sector][subsector][cscID][param 0 or 1]
0045 };
0046 
0047 #endif