35 StatusCode
createObj( IOpaqueAddress* pAddr, DataObject*& pObj ) {
46 if ( evt == NULL )
return StatusCode::FAILURE;
55 if ( rBuf.
nBuf() == 1 )
57 uint32_t dataLen = rBuf.
bufSize( 0 );
58 uint32_t* dataPtr = rBuf( 0 );
60 if ( dataLen > 11 && dataPtr[1] == 0xffffffff )
63 if ( ( dataPtr[start] >> 24 ) == 0xcf )
65 _localTimeRound = _localRevisor->timeRound( header->
runNumber() );
67 unsigned long t1 =
calEts( dataPtr + start );
70 static unsigned long t2 = 0;
71 if ( ( start + 3 ) < dataLen && dataPtr[start + 2] != 0xf0f0f0f0 )
73 if ( ( dataPtr[start + 2] >> 24 ) == 0xd1 ) { t2 =
calEts( dataPtr + start + 2 ); }
76 uint32_t _dataT2[2] = { dataPtr[10], dataPtr[12] };
77 unsigned long _t2 =
calEts( _dataT2 );
78 if ( labs( _t2 - t2 ) < 150 * 2000 ) { t2 = _t2; }
79 else if ( labs( _t2 - 2000000 - t2 ) < 150 * 2000 ) { t2 = _t2 - 2000000; }
80 else if ( labs( _t2 + 2000000 - t2 ) < 150 * 2000 ) { t2 = _t2 + 2000000; }
88 return StatusCode::SUCCESS;