Stop using 5 most significant bits in HLT sourceID
The rawbanks of type RawBank::HltDecReports use a sourceID which is set by:
// shift bits in sourceID for the same convention as in HltSelReports
outputrawevent.addBank( int( m_sourceID << SourceID::BitShift ), RawBank::HltDecReports, kVersionNumber, bankBody );
where m_sourceID
identifies whether the dec report is from Hlt1, Hlt2, Sprucing. And it happens to be that BitShift
is currently defined as 13, i.e. it uses 0xE000, which implies this clashes with the fact that the online team has reserved the upper most 5 bits of the 16 bit sourceID, i.e. 0xF100.
Rawbanks of type RawBank::DstData use a sourceID where the the compression algorithm is recorded in bits 0xE000
of the sourceID. This will be addressed in !3528 (merged). In addition, as these banks may exceed the max length of an individual bank, the data is split in multiple banks, and these banks are ordered according to the value of the 8 least significant bits, i.e. 0xFF
And banks of type RawBank::HltSelReports do the same things as the RawBank::HltDecReports to record whether the origin is Hlt1 or Hlt2. And then split banks are enumerated in the lowest bits, specifically 0x1FFF
.