20 uint32_t REId, TEId, FecData, StrSqc;
21 uint32_t nbuf = src.
nBuf();
23 for ( uint32_t i = 0; i < nbuf; ++i )
25 uint32_t* buf = src( i );
26 uint32_t bufSize = src.
bufSize( i );
27 for ( uint32_t j = 0; j < bufSize; ++j )
29 m_builder.unPack( buf[j], REId, FecData, StrSqc );
30 TEId = m_builder.getTEID( REId );
31 if ( TEId == 0xFFFFFFFF )
continue;
33 uint32_t teidBase = TEId & 0xFF0FFFFF;
35 for ( uint32_t k = 0; FecData != 0 && k < 16; FecData >>= 1, ++k )
37 if ( ( FecData & 1 ) == 0 )
continue;
38 if ( StrSqc == 0 ) { teid = teidBase + 15 - k; }
39 else { teid = teidBase + k; }
41 des->push_back( mucDigi );
46 return StatusCode::SUCCESS;