|
ATLAS Offline Software
|
Go to the documentation of this file.
27 static const InterfaceID IID_ITileRawChannelContByteStreamTool(
"TileRawChannelContByteStreamTool", 1, 0);
30 return IID_ITileRawChannelContByteStreamTool;
36 const std::string&
name,
const IInterface*
parent)
42 declareInterface<TileRawChannelContByteStreamTool>(
this);
52 ATH_MSG_INFO (
"Initializing TileRawChannelContByteStreamTool");
56 ToolHandle<TileROD_Decoder> dec(
"TileROD_Decoder");
69 return StatusCode::SUCCESS;
73 ATH_MSG_INFO (
"Finalizing TileRawChannelContByteStreamTool successfuly");
74 return StatusCode::SUCCESS;
92 std::map<uint32_t, TileROD_Encoder> mapEncoder;
93 std::vector<TileFastRawChannel>
channels;
102 if (isTMDB) reid = hid2re->getRodTileMuRcvID(frag_id);
103 else reid = hid2re->getRodID(frag_id);
124 float amplitude = rawChannel->amplitude();
125 float time = rawChannel->time();
126 float quality = rawChannel->quality();
131 if (quality > 15.0) quality = 15.0;
144 <<
" ROD " <<
"0x" << reid
145 <<
" number of channels " << MSG::dec <<
nChannels );
151 for (std::pair<const uint32_t, TileROD_Encoder>& reidAndEncoder: mapEncoder) {
153 theROD = fea->
getRodData(reidAndEncoder.first);
156 if ((reidAndEncoder.first & 0xf00)) {
162 ATH_MSG_DEBUG(
" Number of TileRawChannel words in ROD " << MSG::hex <<
" 0x" << reidAndEncoder.first << MSG::dec <<
" : " << theROD->size() );
165 return StatusCode::SUCCESS;
def retrieve(aClass, aKey=None)
unsigned constexpr int nChannels
Template class for assembling a full atlas raw event from subfragments.
void fillRODTileMuRcvRawChannel(std::vector< uint32_t > &v)
static const TileCablingService * getInstance()
get pointer to service instance
void setTileHWID(const TileHWID *tileHWID, bool verbose, unsigned int type=4)
set all necessary parameters for the encoder
Static class providing several utility functions and constants.
Provides conversion from TileRawChannel, TileL2 and TMDB (digits,MF raw channel,decision) to ROD form...
void fillROD4(std::vector< uint32_t > &v)
int channel(const HWIdentifier &id) const
extract channel field from HW identifier
void setTypeAndUnit(TileFragHash::TYPE type, TileRawChannelUnit::UNIT unit)
set OF algorigtm type and amplitude units for a drawer
const ServiceHandle< StoreGateSvc > & detStore() const
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
int ros(const HWIdentifier &id) const
extract ros field from HW identifier
ServiceHandle< StoreGateSvc > & evtStore()
The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.
void add(const TileFastRawChannel *rc)
add TileRawChannels to the current list
int adc(const HWIdentifier &id) const
extract adc field from HW identifier
void fillROD5(std::vector< uint32_t > &v)
::StatusCode StatusCode
StatusCode definition for legacy code.
void setMaxChannels(int maxChannels)
set maximum number of channels in a drawer
HWIdentifier drawer_id(int frag) const
ROS HWIdentifer.
Helpers for checking error return status codes and reporting errors.
StatusCode initialize(bool used=true)
size_type channel_hash_max(void) const
channel hash table max size
int drawer(const HWIdentifier &id) const
extract drawer field from HW identifier
def time(flags, cells_name, *args, **kw)
std::vector< uint32_t > RODDATA
ROD data as a vector of unsigned int.
static unsigned int getDrawerIdx(unsigned int ros, unsigned int drawer)
Returns a drawer hash.
int getMaxChannels(void) const
RODDATA * getRodData(uint32_t id)
get a block of ROD data