20 (
this != &right ) ) {
24 for (
size_t i = 0; i < 2; ++i ) {
47 val |= ( 0x00C0 | (
roi( 0 ) & 0x01F ) << 1 );
53 val |= (
ovl( 0 ) & 0x0003 ) << 8;
59 val |= ( 0x018000 | (
roi( 1 ) & 0x001F ) << 10 );
65 val |= (
ovl( 1 ) & 0x0003 ) << 17;
71 val |= (
pt( 0 ) & 0x0007 ) << 19;
77 val |= (
pt( 1 ) & 0x0007 ) << 22;
88 val |= (
bcid() & 0x07 ) << 27;
90 if (
charge( 0 ) > 0 ) val |= 0x040000000;
92 if (
charge( 1 ) > 0 ) val |= 0x080000000;
102 if ( value & 0x0001 ) {
108 val = ( value >> 1 ) & 0x001F;
109 if ( val == 0x001F ) {
114 ovl( 0, ( value >> 8 ) & 0x0003 );
117 val = ( value >> 10 ) & 0x001F;
118 if ( val == 0x001F ) {
123 ovl( 1, ( value >> 17 ) & 0x0003 );
126 val = ( value >> 19 ) & 0x0007;
127 if ( val == 0x0007 ) {
133 val = ( value >> 22 ) & 0x0007;
134 if ( val == 0x0007 ) {
140 val = ( value >> 25 ) & 0x0001;
147 val = ( value >> 26 ) & 0x0001;
154 val = ( value >> 27 ) & 0x0007;
157 val = ( value >> 30 ) & 0x0001;
158 if ( val != 0 )
charge( 0, + 1 );
160 val = ( value >> 31 ) & 0x0001;
161 if ( val != 0 )
charge( 1, + 1 );
169 out <<
"Bit 0 " <<
" >2candidates in a sector ";
172 out <<
"Bit 1-5 " <<
" ROI<1> ";
173 if (
m_roi[ 0 ] == -1 ) {
174 out << std::setw( 8 ) <<
"NA" << std::endl;
176 out << std::setw( 8 ) <<
m_roi[ 0 ] << std::endl;
178 out <<
"Bit 6-7 " <<
" NA " << std::endl;
179 out <<
"Bit 8-9 " <<
" OVL<1> ";
180 if (
m_ovl[ 0 ] == 0 ) {
181 out << std::setw( 8 ) <<
"No Ovl" << std::endl;
182 }
else if (
m_ovl[ 0 ] == 1 ) {
183 out << std::setw( 8 ) <<
"Phi" << std::endl;
184 }
else if (
m_ovl[ 0 ] == 2 ) {
185 out << std::setw( 8 ) <<
"Eta" << std::endl;
186 }
else if (
m_ovl[ 0 ] == 3 ) {
187 out << std::setw( 8 ) <<
"Phi,Eta" << std::endl;
189 out << std::setw( 8 ) <<
"NA" << std::endl;
191 out <<
"Bit 10-14 " <<
" ROI<2> ";
192 if (
m_roi[ 1 ] == -1 ) {
193 out << std::setw( 8 ) <<
"NA" << std::endl;
195 out << std::setw( 8 ) <<
m_roi[ 1 ] << std::endl;
197 out <<
"Bit 15-16 " <<
" NA " << std::endl;
198 out <<
"Bit 17-18 " <<
" OVL<2> ";
199 if (
m_ovl[ 1 ] == 0 ) {
200 out << std::setw( 8 ) <<
"No Ovl" << std::endl;
201 }
else if (
m_ovl[ 1 ] == 1 ) {
202 out << std::setw( 8 ) <<
"Phi" << std::endl;
203 }
else if (
m_ovl[ 1 ] == 2 ) {
204 out << std::setw( 8 ) <<
"Eta" << std::endl;
205 }
else if (
m_ovl[ 1 ] == 3 ) {
206 out << std::setw( 8 ) <<
"Phi,Eta" << std::endl;
208 out << std::setw( 8 ) <<
"NA" << std::endl;
210 out <<
"Bit 19-21 " <<
" Pt1 ";
211 if (
m_pt[ 0 ] == -1 ) {
212 out << std::setw( 8 ) <<
"No Hit" << std::endl;
214 out << std::setw( 8 ) <<
m_pt[ 0 ] << std::endl;
216 out <<
"Bit 22-24 " <<
" Pt2 ";
217 if (
m_pt[ 1 ] == -1 ) {
218 out << std::setw( 8 ) <<
"No Hit" << std::endl;
220 out << std::setw( 8 ) <<
m_pt[ 1 ] << std::endl;
222 out <<
"Bit 25 " <<
" >2candidates in ROI1 ";
224 out <<
"Bit 26 " <<
" >2candidates in ROI2 ";
226 out <<
"Bit 27-29 " <<
" BCID ";
227 out << std::setw( 8 ) <<
m_bcid << std::endl;
228 out <<
"Bit 30 " <<
" charge in ROI1 ";
229 out << std::setw( 8 ) <<
m_charge[ 0 ] << std::endl;
230 out <<
"Bit 31 " <<
" charge in ROI2 ";
231 out << std::setw( 8 ) <<
m_charge[ 1 ] << std::endl;
SectorLogicWord getWordFormat() const
Get data in 32 bit word format.
Lvl1MuBarrelSectorLogicData()
virtual void printOut(std::ostream &out) const
print out data
Lvl1MuBarrelSectorLogicData & operator=(const Lvl1MuSectorLogicData &right)
const Lvl1MuSectorLogicData & convertFromWordFormat(const SectorLogicWord &)
Convert SectorLogicData from 32 bit word data.
bool m_2candidatesInSector
void clear2candidates(size_t id)
bool is2candidatesInSector() const
unsigned int SectorLogicWord
void set2candidates(size_t id)
int charge(size_t id) const
bool is2candidates(size_t id) const
void clear2candidatesInSector()
void set2candidatesInSector()
Namespace for the LVL1 muon interface classes.