11 #include "GaudiKernel/Bootstrap.h"
12 #include "GaudiKernel/ISvcLocator.h"
13 #include "GaudiKernel/IMessageSvc.h"
14 #include "GaudiKernel/MsgStream.h"
15 #include "GaudiKernel/StatusCode.h"
16 #include "GaudiKernel/GaudiException.h"
24 : m_multiplicityWord( multword ), m_triggerMode(
mode) {
34 : m_multiplicityWord( multword ), m_triggerMode(exclusive) {
46 for(
uint32_t i = 0;
i < LVL1::MuCTPIBits::MULT_THRESH_NUM; ++
i ) {
63 if( candidateNumber >= LVL1::MuCTPIBits::MULT_THRESH_NUM ) {
66 throw GaudiException(
"MuCTPI_MultiplicityWord_Decoder::getMultiplicity> Threshold out of range",
67 "MuCTPI_MultiplicityWord_Decoder::getMultiplicity", StatusCode::FAILURE );
72 LVL1::MuCTPIBits::MULT_VAL);
80 return ( (
m_multiplicityWord >> ((LVL1::MuCTPIBits::MULT_BCID_POS-1) * LVL1::MuCTPIBits::MULT_BITS)) &
81 LVL1::MuCTPIBits::MULT_VAL );
90 SmartIF<IMessageSvc>
msgSvc{Gaudi::svcLocator()->service(
"MessageSvc")};
94 MsgStream
log(
msgSvc,
"MuCTPI_MultiplicityWord_Decoder" );
109 for(
uint16_t i = 0;
i < LVL1::MuCTPIBits::MULT_THRESH_NUM; ++
i ) {