CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Attributes | Friends
CSCBadCFEBWord Class Reference

#include <CSCBadCFEBWord.h>

Public Member Functions

bool check () const
 make sure it really does start with a "B" More...
 
unsigned data () const
 
bool isBad () const
 

Private Attributes

unsigned short b_:4
 
unsigned short code_:3
 
unsigned short word1_:4
 
unsigned short word2_:4
 
unsigned short zero_:1
 

Friends

std::ostream & operator<< (std::ostream &os, const CSCBadCFEBWord &)
 

Detailed Description

When a time slice is bad, it only has four words, and they all start with "B"

Definition at line 9 of file CSCBadCFEBWord.h.

Member Function Documentation

bool CSCBadCFEBWord::check ( ) const
inline

make sure it really does start with a "B"

Definition at line 12 of file CSCBadCFEBWord.h.

References b_.

Referenced by CSCBadCFEBTimeSlice::check(), and operator<<().

12 {return b_==0xb;}
unsigned short b_
unsigned CSCBadCFEBWord::data ( ) const
inline

Definition at line 15 of file CSCBadCFEBWord.h.

References b_, code_, word1_, and word2_.

Referenced by CSCCFEBData::CSCCFEBData().

15 {return (word1_ + (word2_<<4) + (code_<<9) + (b_<<12) );}
unsigned short word2_
unsigned short code_
unsigned short b_
unsigned short word1_
bool CSCBadCFEBWord::isBad ( ) const
inline

Definition at line 13 of file CSCBadCFEBWord.h.

13 {return true;}

Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  os,
const CSCBadCFEBWord word 
)
friend

Definition at line 4 of file CSCBadCFEBWord.cc.

5 {
6  if(!word.check()) os << "Even the Bad CFEB word is bad! Sheesh!" << std::endl;
7  else
8  {
9  switch(word.code_)
10  {
11  case 1:
12  os << "CFEB: SCA Capacitors Full block " << word.word2_
13  << " FIFO1 count (4-bit) " << word.word1_ << std::endl;
14  break;
15  case 2:
16  os << "CFEB: FPGA FIFO Full FIFO3 count (4-bit) " << word.word2_
17  << " FIFO1 count (4-bit) " << word.word1_ << std::endl;
18  break;
19  case 5:
20  os << "CFEB: DMB FIFO Full " << std::endl;
21  break;
22  case 6:
23  os << "CFEB: DMB FPGA FIFO Full GFIFO count (4-bit)" << word.word2_
24  << " LFIFO count (4-bit) " << word.word1_ << std::endl;
25  break;
26  default:
27  os << "Undefined CFEB error" << std::endl;
28  break;
29  }
30  }
31  return os;
32 }
unsigned short word2_
unsigned short code_
bool check() const
make sure it really does start with a &quot;B&quot;
unsigned short word1_

Member Data Documentation

unsigned short CSCBadCFEBWord::b_
private

Definition at line 21 of file CSCBadCFEBWord.h.

Referenced by check(), and data().

unsigned short CSCBadCFEBWord::code_
private

Definition at line 20 of file CSCBadCFEBWord.h.

Referenced by data(), and operator<<().

unsigned short CSCBadCFEBWord::word1_
private

Definition at line 17 of file CSCBadCFEBWord.h.

Referenced by data(), and operator<<().

unsigned short CSCBadCFEBWord::word2_
private

Definition at line 18 of file CSCBadCFEBWord.h.

Referenced by data(), and operator<<().

unsigned short CSCBadCFEBWord::zero_
private

Definition at line 19 of file CSCBadCFEBWord.h.