25 for(
unsigned int i = 0; i < 32; ++i){
27 if(status_channel & 0x00000001){ status +=
m_bitToPrbChn[i]; }
43 const std::set<TileBchPrbs::Prb>& prbs = status.getPrbs();
44 for(std::set<TileBchPrbs::Prb>::const_iterator iPrb = prbs.begin();
45 iPrb!=prbs.end(); ++iPrb)
47 std::map<TileBchPrbs::Prb,std::pair<unsigned int,unsigned int> >
::const_iterator
53 words[iMap->second.first] |= (1 << iMap->second.second);
150 for(
unsigned int i = 0; i < 32; ++i){
161 for(
unsigned int i = 0; i < 32; ++i){
177 stm <<
"Current bit to problem assignment" << std::endl;
178 stm <<
"---------------------------------" << std::endl;
179 stm <<
"Channel:" << std::endl;
180 for(
unsigned int i = 0; i < 32; ++i){
183 stm <<
"bit "<<i<<
"\t:\t" << desc << std::endl;
185 stm <<
"Adc:" << std::endl;
186 for(
unsigned int i = 0; i < 32; ++i){
189 stm <<
"bit "<<i<<
"\t:\t" << desc << std::endl;
void init_BitPat_ofl01()
Initializes bit pattern version "ofl01".
TileBchStatus decode(uint32_t status_channel, uint32_t status_adc=0) const
Decode the status word.
std::vector< TileBchPrbs::Prb > m_bitToPrbChn
Bit to problem association for the channel word.
void printBitAssignment() const
Print status bits and their assigned problem.
TileBchDecoder(BitPatVer bitPatVer)
Ctor.
TileBchWords encode(const TileBchStatus &status) const
Encode an ADC status into channel and adc status word bits.
void init_BitPat_onl01()
Initializes bit pattern version "ofl01".
std::vector< TileBchPrbs::Prb > m_bitToPrbAdc
Bit to problem association for the ADC word.
void initPrbToBit()
Initializes the problem to bit map.
std::map< TileBchPrbs::Prb, std::pair< unsigned int, unsigned int > > m_prbToBit
Problem to status word and bit association.
@ OnlineTimingDmuBcOffsetNeg
@ OnlineTimingDmuBcOffsetPos
static std::string getDescription(const Prb &prb)
Get description of problem.
Class holding bad channel problems.
Thrown by TileBchBits if unkown problem is detected.
Thrown by TileBchBits if invalid bit pattern is detected.