|
ATLAS Offline Software
|
Go to the documentation of this file.
26 static const InterfaceID IID_ITileDigitsContByteStreamTool
27 (
"TileDigitsContByteStreamTool", 1, 0);
30 {
return IID_ITileDigitsContByteStreamTool; }
35 ,
const std::string&
name,
const IInterface*
parent )
41 declareInterface< TileDigitsContByteStreamTool >(
this );
50 ATH_MSG_INFO (
"Initializing TileDigitsContByteStreamTool");
54 ToolHandle<TileROD_Decoder> dec(
"TileROD_Decoder");
62 return StatusCode::SUCCESS;
66 ATH_MSG_INFO (
"Finalizing TileDigitsContByteStreamTool successfuly");
67 return StatusCode::SUCCESS;
76 std::map<uint32_t, TileROD_Encoder> mapEncoder;
84 bool isTMDB =
evtStore()->proxy(digitsContainer)->name() ==
"MuRcvDigitsCnt";
91 reid = hid2re->getRodTileMuRcvID(frag_id);
94 reid = hid2re->getRodID(frag_id);
98 for (
const TileDigits* digits : *digitsCollection) {
99 mapEncoder[reid].addDigi(digits);
104 ATH_MSG_DEBUG(
" Collection " <<
m <<
": " << MSG::hex <<
"0x" << frag_id
105 <<
" ROD " <<
"0x" << reid
106 <<
" number of channels " << MSG::dec <<
n );
111 for (std::pair<const uint32_t, TileROD_Encoder>& reidAndEncoder: mapEncoder) {
113 theROD = fea->
getRodData(reidAndEncoder.first);
118 if ((reidAndEncoder.first & 0xf00)) {
125 ATH_MSG_DEBUG(
" Number words in ROD " << MSG::hex <<
" 0x"<< reidAndEncoder.first << MSG::dec <<
" : " << theROD->size() );
128 return StatusCode::SUCCESS;
def retrieve(aClass, aKey=None)
Template class for assembling a full atlas raw event from subfragments.
static const TileCablingService * getInstance()
get pointer to service instance
Provides conversion from TileRawChannel, TileL2 and TMDB (digits,MF raw channel,decision) to ROD form...
size_t size() const
Duplicate of fullSize for backwards compatability.
void fillROD1(std::vector< uint32_t > &v)
convert all TileDigits in the current list to a vector of 32bit words
const ServiceHandle< StoreGateSvc > & detStore() const
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
ServiceHandle< StoreGateSvc > & evtStore()
The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.
::StatusCode StatusCode
StatusCode definition for legacy code.
Helpers for checking error return status codes and reporting errors.
void fillRODTileMuRcvDigi(std::vector< uint32_t > &v)
convert the TMDB objects into a vector of 32bit words: 8bit words/digit, 16bit words/RC,...
StatusCode initialize(bool used=true)
std::vector< uint32_t > RODDATA
ROD data as a vector of unsigned int.
void fillROD5D(std::vector< uint32_t > &v)
macros to associate a CLID to a type
RODDATA * getRodData(uint32_t id)
get a block of ROD data