49 const IInterface* parent)
54 declareInterface<TileL2ContByteStreamTool>(
this);
68 ToolHandle<TileROD_Decoder> dec(
"TileROD_Decoder");
73 return StatusCode::SUCCESS;
78 return StatusCode::SUCCESS;
92 std::map<uint32_t, TileROD_Encoder> mapEncoder;
97 for (; it_cont != it_cont_end; ++it_cont) {
99 int frag_id = (*it_cont)->identify();
101 uint32_t reid = hid2re->getRodID(frag_id);
104 const TileL2* l2 = *it_cont;
105 mapEncoder[reid].addL2(l2);
109 if (
msgLvl(MSG::VERBOSE)) {
110 unsigned int ndata = l2->Ndata();
112 for (
unsigned int i = 0; i < (l2->NMuons()); ++i, j += 2) {
113 msg(MSG::VERBOSE) <<
"Muon found:" << MSG::hex
114 <<
" frag ID = 0x" << (l2->identify())
115 <<
" word1 = 0x" << ((j < ndata) ? l2->val(j) : 0)
116 <<
" word2 = 0x" << ((j + 1 < ndata) ? l2->val(j + 1) : 0) << MSG::dec
117 <<
" eta = " << (l2->eta(i))
118 <<
" phi = " << (l2->phi(i)) <<
endmsg;
120 for (; j < ndata; ++j) {
121 msg(MSG::VERBOSE) <<
"extra word = 0x" << MSG::hex << l2->val(j) << MSG::dec <<
endmsg;
127 <<
" Number of muons " << nm );
129 std::map<uint32_t, TileROD_Encoder>::iterator it = mapEncoder.begin();
130 std::map<uint32_t, TileROD_Encoder>::iterator it_end = mapEncoder.end();
136 for (; it != it_end; ++it) {
138 theEncoder = &((*it).second);
143 return StatusCode::SUCCESS;
#define ATH_CHECK
Evaluate an expression and check for errors.
macros to associate a CLID to a type
Helpers for checking error return status codes and reporting errors.
TileContainer< TileL2 > TileL2Container
const ServiceHandle< StoreGateSvc > & detStore() const
bool msgLvl(const MSG::Level lvl) const
DataModel_detail::const_iterator< DataVector > const_iterator
const_iterator end() const noexcept
const_iterator begin() const noexcept
Template class for assembling a full atlas raw event from subfragments.
std::vector< uint32_t > RODDATA
ROD data as a vector of unsigned int.
RODDATA * getRodData(uint32_t id)
get a block of ROD data
Class to store TileMuId and Et quantities computed at the TileCal ROD DSPs.
Provides conversion from TileRawChannel, TileL2 and TMDB (digits,MF raw channel,decision) to ROD form...
void fillRODL2(std::vector< uint32_t > &v)
void fillROD12(std::vector< uint32_t > &v)