54 m_gmt(gmt), m_id(id), m_matcher(gmt, id+2), m_MyChipCancelbits(4), m_OtherChipCancelbits(4) {
91 for (
int i = 0;
i < 4;
i++ ) {
103 std::stringstream outmy;
105 case 0 : outmy <<
"DT " ;
break;
106 case 1 : outmy <<
"CSC " ;
break;
107 case 2 : outmy <<
"bRPC" ;
break;
108 case 3 : outmy <<
"fRPC" ;
break;
110 outmy <<
"(my chip) cancel-bits : " ;
114 std::stringstream outother;
116 outother << (
m_id==2 ?
"CSC" :
"DT" ) <<
"(other chip) cancel-bits : " ;
118 outother << std::endl;
136 for(
int imine=0; imine<4; imine++) {
138 if (idxother != -1) {
139 int mine_is_matched = 0;
149 unsigned addr = (unsigned) (2*mine_is_matched + other_is_matched);
150 unsigned mask = (unsigned) 1 << addr;
158 for(
int iother=0; iother<4; iother++) {
161 int mine_is_matched = 0;
171 unsigned addr = (unsigned) (2*other_is_matched + mine_is_matched);
172 unsigned mask = (unsigned)1 << (addr+4);
const L1MuGMTMatcher * Matcher(int id) const
return pointer to Matcher
void reset()
clear cancel-out unit
void print()
print cancel-out bits
unsigned getValue(int idx)
get Value
const L1MuGlobalMuonTrigger & m_gmt
int rowAny(int r) const
is any element in row r > 0 ? return index or -1
std::vector< bool > m_MyChipCancelbits
void print()
print matching results
void SetCancelBits(int idx, const std::vector< bool > &mine, const std::vector< bool > &others)
Set cancel bits.
virtual ~L1MuGMTCancelOutUnit()
destructor
L1MuGMTCancelOutUnit(const L1MuGlobalMuonTrigger &gmt, int id)
constructor
void reset()
clear Matcher
const L1MuGMTMatrix< bool > & pairM() const
return pair matrix
std::vector< bool > m_OtherChipCancelbits
static L1MuGMTRegCDLConfig * getRegCDLConfig()
int colAny(int c) const
is any element in column c > 0 ? return index or -1
void run()
run cancel-out unit
L1MuGMTDebugBlock * DebugBlockForFill() const
for debug: return the debug block (in order to fill it)