CMS 3D CMS Logo

CSCConstants.h
Go to the documentation of this file.
1 #ifndef CSCCommonTrigger_CSCConstants_h
2 #define CSCCommonTrigger_CSCConstants_h
3 
9 #include <cmath>
10 
12 {
13  public:
14  enum CFEB_Info {
15  //Maximum number of cathode front-end boards
16  MAX_CFEBS = 5,
17  };
18 
22  };
23 
24  // Note: WIRE means actually "wiregroup" here
25  enum WG_and_Strip {
30  NUM_DI_STRIPS = 40+1, // Add 1 to allow for staggering of strips
31  NUM_HALF_STRIPS = 160+1,
33  // each CFEB reads out 8 distrips, 16 strips or 32 halfstrips
37  // max halfstrip number in ME1/1 chambers
38  // All ME1A readout by 1 CFEB -> 32 -1
40  // All ME1A readout by 3 CFEBs -> 3*32 -1
42  // All ME1B readout by 4 CFEBs -> 4*32 -1
47  };
48 
49  // CSCs have 6 layers. The key (refernce) layer is the third layer
50  enum Layer_Info {
55 
56  // Both ALCT and CLCTs have patterns. CLCTs have a better granularity than ALCTs, thus more patterns
57  enum Pattern_Info {
61  // Max number of wires participating in a pattern
63  // Max number of strips participating in a pattern
65  // Max number of halfstrips participating in a pattern
67 
68  enum Digis_Info {
71 
72  enum LCT_stubs{
73  // CSC local trigger considers 4-bit BX window (16 numbers) in the readout
77  // Maximum allowed matching window size
79  // Each CLCT processor can send up to 2 CLCTs to TMB per BX
81  // Each ALCT processor can send up to 2 ALCTs to TMB per BX
83  // Each CSC can send up to 2 LCTs to the MPC per BX
85  // An MPC receives up to 18 LCTs from 9 CSCs in the trigger sector
87  // Reference BX for LCTs in simulation and firmware
89 };
90 
91 #endif