129 return !( result == *
this);
165 m_bxInEvent = (hexBxInEvent + baseValue/2)%baseValue - baseValue/2;
177 int hexBxInEvent = (
m_bxInEvent + baseValue)%baseValue;
178 word64 = word64 | (
static_cast<cms_uint64_t> (hexBxInEvent)
235 <<
"\nError: index for A_DATA array out of range. Allowed range: [0, "
236 << NumberAData <<
") " << std::endl;
249 <<
"\nError: index for A_DATA array out of range. Allowed range: [0, "
250 << NumberAData <<
") " << std::endl;
263 int sizeW64 =
sizeof(word64)*8;
268 for (
int i = 0;
i < nSubWords; ++
i) {
270 m_aData[
i] = (word64 & (DataCHMask << dataShift)) >> dataShift;
281 for (
int i = 0;
i < nSubWords; ++
i) {
283 m_aData[
i + nSubWords] = (word64 & (DataCHMask << dataShift)) >> dataShift;
300 int sizeW64 =
sizeof(word64)*8;
305 for (
int i = 0;
i < nSubWords; ++
i) {
313 for (
int i = 0;
i < nSubWords; ++
i) {
330 <<
"\nError: index for B_DATA array out of range. Allowed range: [0, "
331 << NumberBData <<
") " << std::endl;
344 <<
"\nError: index for B_DATA array out of range. Allowed range: [0, "
345 << NumberBData <<
") " << std::endl;
358 int sizeW64 =
sizeof(word64)*8;
363 for (
int i = 0;
i < nSubWords; ++
i) {
365 m_bData[
i] = (word64 & (DataCHMask << dataShift)) >> dataShift;
370 for (
int i = 0;
i < nSubWords; ++
i) {
372 m_bData[
i + nSubWords] = (word64 & (DataCHMask << dataShift)) >> dataShift;
384 int sizeW64 =
sizeof(word64)*8;
389 for (
int i = 0;
i < nSubWords; ++
i) {
397 for (
int i = 0;
i < nSubWords; ++
i) {
458 myCout <<
"\n L1GtPsbWord::print \n" << std::endl;
460 myCout <<
" Board Id: "
461 << std::hex <<
" hex: " << std::setw(4) << std::setfill(
'0') <<
m_boardId
467 int hexBxInEvent = (
m_bxInEvent + baseValue)%baseValue;
469 myCout <<
" BxInEvent: "
470 << std::hex <<
" hex: " <<
" " << std::setw(1) << hexBxInEvent
475 << std::hex <<
" hex: " <<
" " << std::setw(3) << std::setfill(
'0') <<
m_bxNr
477 << std::dec <<
" dec: " <<
m_bxNr
481 myCout <<
" EventNr: "
482 << std::hex <<
" hex: " <<
" " << std::setw(6) << std::setfill(
'0') <<
m_eventNr
494 <<
"A_Data_CH0 " <<
"\n"
495 << std::hex <<
" hex: " << std::setfill(
'0');
497 for (
int i = 0;
i < dataBlocksPerLine; ++
i) {
499 int iCh = dataBlocksPerLine - (
i + 1);
500 myCout << std::setw(4) <<
m_aData[iCh] <<
" ";
505 << std::dec <<
" dec: ";
507 for (
int i = 0;
i < dataBlocksPerLine; ++
i) {
509 int iCh = dataBlocksPerLine - (
i + 1);
510 myCout << std::setw(5) <<
m_aData[iCh] <<
" ";
518 <<
"A_Data_CH4 " <<
"\n"
519 << std::hex <<
" hex: " << std::setfill(
'0');
521 for (
int i = 0;
i < dataBlocksPerLine; ++
i) {
523 int iCh = dataBlocksPerLine - (
i + 1);
524 myCout << std::setw(4) <<
m_aData[iCh + dataBlocksPerLine] <<
" ";
529 << std::dec <<
" dec: ";
531 for (
int i = 0;
i < dataBlocksPerLine; ++
i) {
533 int iCh = dataBlocksPerLine - (
i + 1);
534 myCout << std::setw(5) <<
m_aData[iCh + dataBlocksPerLine] <<
" ";
544 <<
"B_Data_CH0 " <<
"\n"
545 << std::hex <<
" hex: " << std::setfill(
'0');
547 for (
int i = 0;
i < dataBlocksPerLine; ++
i) {
549 int iCh = dataBlocksPerLine - (
i + 1);
550 myCout << std::setw(4) <<
m_bData[iCh] <<
" ";
555 << std::dec <<
" dec: ";
557 for (
int i = 0;
i < dataBlocksPerLine; ++
i) {
559 int iCh = dataBlocksPerLine - (
i + 1);
560 myCout << std::setw(5) <<
m_bData[iCh] <<
" ";
568 <<
"B_Data_CH4 " <<
"\n"
569 << std::hex <<
" hex: " << std::setfill(
'0');
571 for (
int i = 0;
i < dataBlocksPerLine; ++
i) {
573 int iCh = dataBlocksPerLine - (
i + 1);
574 myCout << std::setw(4) <<
m_bData[iCh + dataBlocksPerLine] <<
" ";
579 << std::dec <<
" dec: ";
581 for (
int i = 0;
i < dataBlocksPerLine; ++
i) {
583 int iCh = dataBlocksPerLine - (
i + 1);
584 myCout << std::setw(5) <<
m_bData[iCh + dataBlocksPerLine] <<
" ";
588 myCout <<
"\n" << std::endl;
590 myCout <<
" LocalBxNr: "
591 << std::hex <<
" hex: " <<
" " << std::setw(3) << std::setfill(
'0') <<
m_localBxNr
const cms_uint16_t bData(int iB) const
get/set B_DATA_CH_IB
static const int LocalBxNrWord
static const int BoardIdShift
void setEventNrWord64(cms_uint64_t &word64, int iWord)
void reset()
reset the content of a L1GtPsbWord
static const int BDataCH0Word
static const cms_uint64_t BoardIdMask
static const int EventNrWord
void setBData(cms_uint16_t bDataVal, int iB)
static const cms_uint64_t LocalBxNrMask
void setBxNrWord64(cms_uint64_t &word64, int iWord)
static const int BoardIdWord
static const cms_uint64_t BxInEventMask
cms_uint16_t m_bData[NumberBData]
static const int BxInEventShift
void setBxInEventWord64(cms_uint64_t &word64, int iWord)
void setEventNr(cms_uint32_t eventNrValue)
static const int DataCHSize
void setBxNr(cms_uint16_t bxNrValue)
void setADataWord64(cms_uint64_t &word64, int iWord)
const cms_uint16_t aData(int iA) const
get/set A_DATA_CH_IA
void setBoardId(cms_uint16_t boardIdValue)
bool operator==(const L1GtPsbWord &) const
equal operator
void setLocalBxNrWord64(cms_uint64_t &word64, int iWord)
void setBxInEvent(int bxInEventValue)
virtual ~L1GtPsbWord()
destructor
unsigned short cms_uint16_t
void setBDataWord64(cms_uint64_t &word64, int iWord)
unsigned int cms_uint32_t
L1GtPsbWord()
constructors
void print(std::ostream &myCout) const
pretty print
static const int LocalBxNrShift
static const int BxInEventWord
static const int NumberBData
static const cms_uint64_t EventNrMask
static const int ADataCH0Word
static const int EventNrShift
static const int BDataCH4Word
static const int BxNrWord
static const int NumberAData
bool operator!=(const L1GtPsbWord &) const
unequal operator
void setLocalBxNr(cms_uint16_t localBxNrValue)
static const cms_uint64_t BxNrMask
unsigned long long cms_uint64_t
cms_uint16_t m_aData[NumberAData]
void setAData(cms_uint16_t aDataVal, int iA)
void setBoardIdWord64(cms_uint64_t &word64, int iWord)
static const int ADataCH4Word
static const int BxNrShift