22 StatusCode
createObj( IOpaqueAddress* pAddr, DataObject*& pObj ) {
35 cout <<
"RawDataHltRawCnv::createObj can't get event!" << endl;
36 return StatusCode::FAILURE;
41 uint32_t nbuf = hltBuf.
nBuf();
43 uint32_t REId = 0, TEId = 0;
44 uint32_t nmdc = 0, ntof = 0, nemc = 0, nmuc = 0;
45 for ( uint32_t i = 0; i < nbuf; i++ )
47 uint32_t* buf = hltBuf( i );
48 uint32_t bufSize = hltBuf.
bufSize( i );
49 for ( uint32_t j = 0; j < bufSize; j++, digiId++ )
52 m_hltBuilder.unPack( buf[j], digiId, REId, TEData[0], TEData[1] );
53 TEId = m_hltBuilder.getTEID( REId );
54 if ( TEId == 0xFFFFFFFF )
continue;
58 for ( uint32_t k = 0; k < 2; k++ )
61 if ( k == 0 || ( k == 1 && TEData[k] ) )
63 if ( k == 1 ) TEId += 1;
66 nmdc = TEData[k] & 0xFF;
67 ntof = ( TEData[k] >> 8 ) & 0xFF;
68 nemc = ( TEData[k] >> 16 ) & 0xFF;
69 nmuc = ( TEData[k] >> 24 ) & 0xFF;
77 digiCol->push_back( hltRaw );
82 return StatusCode::SUCCESS;