5#ifndef TRT_RAWDATABYTESTREAM_TRT_RODDECODER_H
6#define TRT_RAWDATABYTESTREAM_TRT_RODDECODER_H
28#include "GaudiKernel/ServiceHandle.h"
29#include "GaudiKernel/ToolHandle.h"
30#include "GaudiKernel/ContextSpecificPtr.h"
31#include "GaudiKernel/ThreadLocalContext.h"
32#include "GaudiKernel/ICondSvc.h"
37#include "CoralBase/Attribute.h"
64 const IInterface* parent ) ;
70 virtual StatusCode
finalize()
override;
77 const EventContext& ctx,
78 const std::vector<IdentifierHash>* vecHash = 0)
const override;
118#define CTABLE_FC_LENGTH 33
119#define CTABLE_LI_LENGTH 33
142 StatusCode
update(
const EventContext& ctx)
const;
149 const std::vector<IdentifierHash>* vecHash = 0)
const;
154 const std::vector<IdentifierHash>* vecHash = 0)
const;
159 const t_CompressTable& Ctable,
160 const std::vector<IdentifierHash>* vecHash = 0)
const;
168 mutable std::atomic<unsigned int>
m_skip{};
Maintain a set of objects, one per slot.
Cached unique_ptr with atomic update.
This file defines the class for a collection of AttributeLists where each one is associated with a ch...
This is an Identifier helper class for the TRT subdetector.
InDetRawDataContainer< InDetRawDataCollection< TRT_RDORawData > > TRT_RDO_Container
Define macros for attributes used to control the static checker.
a typed memory pool that saves time spent allocation small object.
This class saves the "context" of an expanded identifier (ExpandedIdentifier) for compact or hash ver...
Maintain a set of objects, one per slot.
This is an Identifier helper class for the TRT subdetector.
StatusCode int_fillExpanded(const OFFLINE_FRAGMENTS_NAMESPACE::ROBFragment *robFrag, TRT_RDO_Container *rodIdc, DataPool< TRT_LoLumRawData > *dataItemsPool, const std::vector< IdentifierHash > *vecHash=0) const
private methods
std::atomic< int > m_err_count_fillCollection
SG::ReadCondHandleKey< CondAttrListCollection > m_CompressKey
virtual ~TRT_RodDecoder()
destructor
StatusCode ReadCompressTableFile(const std::string &TableFilename)
StatusCode ReadCompressTableDB(std::string Tag)
StatusCode update(const EventContext &ctx) const
std::vector< CxxUtils::CachedUniquePtr< t_CompressTable > > m_CompressionTables
IdContext m_straw_layer_context
std::vector< int > m_LoadCompressTableVersions
StatusCode int_fillMinimalCompress(const OFFLINE_FRAGMENTS_NAMESPACE::ROBFragment *robFrag, TRT_RDO_Container *rdoIdo, DataPool< TRT_LoLumRawData > *dataItemsPool, const std::vector< IdentifierHash > *vecHash=0) const
virtual StatusCode initialize() override
initialize
std::atomic< uint32_t > m_Nrdos
std::atomic< unsigned int > m_skip
TRT_RodDecoder(const std::string &type, const std::string &name, const IInterface *parent)
constructor
bool m_loadCompressTableFile
SG::SlotSpecificObj< std::atomic< EventContext::ContextEvt_t > > m_lastPrint ATLAS_THREAD_SAFE
BooleanProperty m_LoLumRawData
std::atomic< unsigned int > m_accept
StatusCode int_fillFullCompress(const OFFLINE_FRAGMENTS_NAMESPACE::ROBFragment *robFrag, TRT_RDO_Container *rdoIdo, DataPool< TRT_LoLumRawData > *dataItemsPool, const t_CompressTable &Ctable, const std::vector< IdentifierHash > *vecHash=0) const
std::atomic< int > m_err_count_int_fillFullCompress
ServiceHandle< ITRT_CablingSvc > m_CablingSvc
BooleanProperty m_TB04_RawData
virtual StatusCode finalize() override
finalize
virtual StatusCode fillCollection(const OFFLINE_FRAGMENTS_NAMESPACE::ROBFragment *robFrag, TRT_RDO_Container *rdoIdc, TRT_BSErrContainer *bserr, DataPool< TRT_LoLumRawData > *dataItemsPool, const EventContext &ctx, const std::vector< IdentifierHash > *vecHash=0) const override
the method to fill the IDC
std::atomic< int > m_err_count_int_fillMinimalCompress
bool m_loadCompressTableDB
const int m_maxCompressionVersion
bool m_lookAtMissingErrors
eformat::ROBFragment< PointerType > ROBFragment
int m_lengths_integral[CTABLE_FC_LENGTH]
std::unique_ptr< unsigned int[]> m_syms
int m_firstcode[CTABLE_FC_LENGTH]