23 ISvcLocator* pSvcLocator )
53 std::vector< ROIB::MuCTPIRoI > roi_vector;
61 std::vector< uint32_t >::const_iterator dword_itr = muctpi_rdo->
dataWord().begin();
62 std::vector< uint32_t >::const_iterator dword_end = muctpi_rdo->
dataWord().end();
63 for( ; dword_itr != dword_end; ++dword_itr ) {
66 if(
roiBCID( *dword_itr ) != bcid )
continue;
71 ATH_MSG_VERBOSE(
" - Processed data word: 0x" << std::hex << std::setw( 8 )
72 << std::setfill(
'0' ) << *dword_itr );
80 std::move(roi_vector) );
88 std::vector< ROIB::EMTauResult >(roibresult->
eMTauResult()) );
93 return StatusCode::SUCCESS;
102 return ( ( multi_word >> 18 ) & 0x7 );
111 return ( ( ( data_word & 0x8000000 ) >> 4 ) | ( ( data_word & 0x3fe0000 ) >> 3 ) |
112 ( data_word & 0x3fff ) );
121 return ( ( data_word >> 14 ) & 0x7 );
131 return ( ( data_word >> 26 ) & 0x1 );
#define ATH_MSG_VERBOSE(x)
Helpers for checking error return status codes and reporting errors.
#define CHECK(...)
Evaluate an expression and check for errors.
AthAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor with parameters:
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T, V, H > &t)
ServiceHandle< StoreGateSvc > & evtStore()
std::string m_muctpiInputKey
Key of the MuCTPI_RDO object.
static uint32_t toRoIWord(uint32_t data_word)
Transform a data word into an RoI word.
std::string m_roibOutputKey
Key of the new (correct) RoIBResult object.
static uint32_t roiBCID(uint32_t data_word)
Extract the BCID stored in the data word.
MuCTPI_RDOToRoIBResult(const std::string &name, ISvcLocator *pSvcLocator)
Regular algorithm constructor.
virtual StatusCode execute() override
Regular algorithm execure function.
static bool roiAccepted(uint32_t data_word)
Extract whether the candidate was accepted to be sent to LVL2.
std::string m_roibInputKey
Key of the old (incorrect) RoIBResult object.
static uint32_t multiplicityBCID(uint32_t multi_word)
Extract the BCID stored in the multiplicity word.
Class representing the readout data of the MuCTPI hardware and simulation.
const std::vector< uint32_t > & dataWord() const
Function returning the muon candidate data words.
uint32_t candidateMultiplicity() const
Function returning the candidate multiplicity for the triggered bunch crossing.
Class holding the LVL1 CTP result used by the RoIBuilder.
Class holding the RoIs from the MuCTPI collected by the RoIB.
const Header & header() const
Member function returning the header.
const Trailer & trailer() const
Member function returning the trailer.
Class for storing the 32-bit muon RoI word.
Class holding the LVL1 RoIB result build by the RoIBuilder.
const std::vector< JetEnergyResult > & jetEnergyResult() const
Gets the jet/energy part of the L1 RDO.
const CTPResult & cTPResult() const
Gets the CTP part of the L1 RDO.
const std::vector< EMTauResult > & eMTauResult() const
Gets the egamma part of the L1 RDO.
const MuCTPIResult & muCTPIResult() const
Gets the MuCTPI part of the L1 RDO.
ROIB::Trailer models the LVL1 ROD Trailer.