CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
CSCMotherboard.h
Go to the documentation of this file.
1 #ifndef CSCTriggerPrimitives_CSCMotherboard_h
2 #define CSCTriggerPrimitives_CSCMotherboard_h
3 
42 
44 {
45  public:
47  CSCMotherboard(unsigned endcap, unsigned station, unsigned sector,
48  unsigned subsector, unsigned chamber,
49  const edm::ParameterSet& conf);
50 
53 
56 
58  void run(const std::vector<int> w_time[CSCConstants::NUM_LAYERS][CSCConstants::MAX_NUM_WIRES],
59  const std::vector<int> hs_times[CSCConstants::NUM_LAYERS][CSCConstants::NUM_HALF_STRIPS],
60  const std::vector<int> ds_times[CSCConstants::NUM_LAYERS][CSCConstants::NUM_HALF_STRIPS]);
61 
64  std::vector<CSCCorrelatedLCTDigi> run(const CSCWireDigiCollection* wiredc,
65  const CSCComparatorDigiCollection* compdc);
66 
68  std::vector<CSCCorrelatedLCTDigi> readoutLCTs();
69 
71  std::vector<CSCCorrelatedLCTDigi> getLCTs();
72 
75  void clear();
76 
78  void setConfigParameters(const CSCDBL1TPParameters* conf);
79 
82 
85 
86  private:
89  int infoV;
90 
92  const unsigned theEndcap;
93  const unsigned theStation;
94  const unsigned theSector;
95  const unsigned theSubsector;
96  const unsigned theTrigChamber;
97 
99  bool isMTCC;
100 
102  bool isTMB07;
103 
105  unsigned int mpc_block_me1a;
108 
110  static const unsigned int def_mpc_block_me1a;
111  static const unsigned int def_alct_trig_enable, def_clct_trig_enable;
113  static const unsigned int def_tmb_l1a_window_size;
114 
116  enum {MAX_LCT_BINS = 16};
117 
120 
123 
125  void checkConfigParameters();
126 
127  void correlateLCTs(CSCALCTDigi bestALCT, CSCALCTDigi secondALCT,
128  CSCCLCTDigi bestCLCT, CSCCLCTDigi secondCLCT);
130  const CSCCLCTDigi& cLCT);
131  unsigned int encodePattern(const int ptn, const int highPt);
132  unsigned int findQuality(const CSCALCTDigi& aLCT, const CSCCLCTDigi& cLCT);
133 
135  void dumpConfigParams() const;
136 
137  // Method for tests
138  void testLCT();
139 };
140 #endif
const unsigned theSector
CSCCorrelatedLCTDigi constructLCTs(const CSCALCTDigi &aLCT, const CSCCLCTDigi &cLCT)
void run(const std::vector< int > w_time[CSCConstants::NUM_LAYERS][CSCConstants::MAX_NUM_WIRES], const std::vector< int > hs_times[CSCConstants::NUM_LAYERS][CSCConstants::NUM_HALF_STRIPS], const std::vector< int > ds_times[CSCConstants::NUM_LAYERS][CSCConstants::NUM_HALF_STRIPS])
unsigned int clct_trig_enable
std::vector< CSCCorrelatedLCTDigi > getLCTs()
std::vector< CSCCorrelatedLCTDigi > readoutLCTs()
unsigned int match_trig_window_size
const unsigned theTrigChamber
static const unsigned int def_alct_trig_enable
const unsigned theEndcap
static const unsigned int def_mpc_block_me1a
unsigned int findQuality(const CSCALCTDigi &aLCT, const CSCCLCTDigi &cLCT)
static const unsigned int def_clct_trig_enable
unsigned int mpc_block_me1a
void correlateLCTs(CSCALCTDigi bestALCT, CSCALCTDigi secondALCT, CSCCLCTDigi bestCLCT, CSCCLCTDigi secondCLCT)
const unsigned theStation
CSCCorrelatedLCTDigi secondLCT[MAX_LCT_BINS]
static const unsigned int def_tmb_l1a_window_size
const unsigned theSubsector
unsigned int encodePattern(const int ptn, const int highPt)
unsigned int tmb_l1a_window_size
void checkConfigParameters()
unsigned int match_trig_enable
CSCAnodeLCTProcessor * alct
tuple conf
Definition: dbtoconf.py:185
CSCCorrelatedLCTDigi firstLCT[MAX_LCT_BINS]
static const unsigned int def_match_trig_window_size
unsigned int alct_trig_enable
CSCCathodeLCTProcessor * clct
void dumpConfigParams() const
void setConfigParameters(const CSCDBL1TPParameters *conf)
static const unsigned int def_match_trig_enable