7 bits.nHeaderFrames = 42;
18 bits.l1aNumber = dmbHeader.
l1a();
23 std::vector<CSCCLCTDigi>
result;
25 int cfeb = (
bits.clct0_cfeb_low) | (
bits.clct0_cfeb_high << 1);
26 int pattern =
bits.clct0_shape;
27 int bend =
bits.clct0_bend;
30 bits.clct0_valid,
bits.clct0_quality, pattern, 1, bend, strip, cfeb,
bits.clct0_bxn, 1,
bits.bxnPreTrigger);
32 strip =
bits.clct1_key;
33 cfeb = (
bits.clct1_cfeb_low) | (
bits.clct1_cfeb_high << 1);
34 pattern =
bits.clct1_shape;
35 bend =
bits.clct1_bend;
38 bits.clct1_valid,
bits.clct1_quality, pattern, 1, bend, strip, cfeb,
bits.clct1_bxn, 2,
bits.bxnPreTrigger);
42 result.push_back(digi0);
43 result.push_back(digi1);
50 std::vector<CSCCorrelatedLCTDigi>
result;
52 int strip =
bits.MPC_Muon0_halfstrip_clct_pattern;
56 bits.MPC_Muon0_quality_,
59 bits.MPC_Muon0_clct_pattern_,
64 bits.MPC_Muon0_SyncErr_,
65 bits.MPC_Muon0_cscid_low | (
bits.MPC_Muon0_cscid_bit4 << 3));
66 result.push_back(digi);
68 strip =
bits.MPC_Muon1_halfstrip_clct_pattern;
72 bits.MPC_Muon1_quality_,
75 bits.MPC_Muon1_clct_pattern_,
80 bits.MPC_Muon1_SyncErr_,
81 bits.MPC_Muon1_cscid_low | (
bits.MPC_Muon1_cscid_bit4 << 3));
82 result.push_back(digi);
87 throw cms::Exception(
"In CSC TMBHeaderFormat 2007, ALCTs belong in ALCT header");
91 throw cms::Exception(
"In CSC TMBHeaderFormat 2007, ALCTs belong in ALCT header");
102 bits.clct0_shape = pattern;
103 bits.clct0_bend = bend;
105 bits.clct0_cfeb_low = (cfeb & 0x1);
106 bits.clct0_cfeb_high = (cfeb >> 1);
120 bits.clct1_shape = pattern;
121 bits.clct1_bend = bend;
123 bits.clct1_cfeb_low = (cfeb & 0x1);
124 bits.clct1_cfeb_high = (cfeb >> 1);
137 bits.MPC_Muon0_halfstrip_clct_pattern = halfStrip;
143 bits.MPC_Muon0_cscid_bit4 = (digi.
getCSCID() >> 3) & 0x1;
154 bits.MPC_Muon1_halfstrip_clct_pattern = halfStrip;
160 bits.MPC_Muon1_cscid_bit4 = (digi.
getCSCID() >> 3) & 0x1;
164 os <<
"...............TMB Header.................."
166 os << std::hex <<
"BOC LINE " <<
bits.b0cline <<
" EOB " <<
bits.e0bline <<
"\n";
167 os <<
std::dec <<
"fifoMode = " <<
bits.fifoMode <<
", nTBins = " <<
bits.nTBins <<
"\n";
168 os <<
"boardID = " <<
bits.boardID <<
", cscID = " <<
bits.cscID <<
"\n";
169 os <<
"l1aNumber = " <<
bits.l1aNumber <<
", bxnCount = " <<
bits.bxnCount <<
"\n";
170 os <<
"trigSourceVect = " <<
bits.trigSourceVect <<
", activeCFEBs = " <<
bits.activeCFEBs <<
"\n";
171 os <<
"bxnPreTrigger = " <<
bits.bxnPreTrigger <<
"\n";
172 os <<
"tmbMatch = " <<
bits.tmbMatch <<
" alctOnly = " <<
bits.alctOnly <<
" clctOnly = " <<
bits.clctOnly <<
"\n";
173 os <<
"clct0_key = " <<
bits.clct0_key <<
" bits.clct0_shape = " <<
bits.clct0_shape
174 <<
" clct0_quality = " <<
bits.clct0_quality <<
"\n";
175 os <<
"..................CLCT....................."
uint16_t getFullBX() const
return 12-bit full BX.
uint16_t getBX() const
return BX
uint16_t getCFEB() const
return Key CFEB ID
bool isValid() const
check CLCT validity (1 - valid CLCT)
uint16_t getStrip() const
return halfstrip that goes from 0 to 31 in a (D)CFEB
uint16_t getPattern() const
return pattern
uint16_t getQuality() const
return quality of a pattern (number of layers hit!)