ATLAS Offline Software
TileL2ContByteStreamCnv.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef TILEBYTESTREAM_TILEL2_BYTESTREAMCNV_H
6 #define TILEBYTESTREAM_TILEL2_BYTESTREAMCNV_H
7 
8 
12 #include "AthenaKernel/BaseInfo.h"
13 #include "GaudiKernel/ToolHandle.h"
14 #include "GaudiKernel/ServiceHandle.h"
15 
17 
18 
19 class DataObject;
20 class StatusCode;
21 class IAddressCreator;
23 class StoreGateSvc;
24 class IROBDataProviderSvc;
26 class ByteStreamCnvSvc;
27 class TileHid2RESrcID;
28 class TileROD_Decoder;
29 
30 // Abstract factory to create the converter
31 template <class TYPE> class CnvFactory;
32 
33 
35  : public TileL2Container, public DataObject
36 {
37 public:
39 
40 
41 protected:
49  void recycle();
50 };
51 
52 
54 
55 
67  : public AthConstConverter
68 {
69  public:
70  TileL2ContByteStreamCnv(ISvcLocator* svcloc);
71 
73 
74  virtual StatusCode initialize() override;
75  virtual StatusCode createObjConst(IOpaqueAddress* pAddr, DataObject*& pObj) const override;
76  virtual StatusCode createRepConst(DataObject* pObj, IOpaqueAddress*& pAddr) const override;
77  virtual StatusCode finalize() override;
78 
80  virtual long repSvcType() const override { return i_repSvcType(); }
81  static long storageType();
82  static const CLID& classID();
83 
84  private:
85  // BYTESTREAMTOOL* m_tool ;
86  ToolHandle<BYTESTREAMTOOL> m_tool;
87 
90 
93 
96 
98  ToolHandle<TileROD_Decoder> m_decoder;
99 
102 
105 };
106 #endif
107 
TileL2ContByteStreamCnv::m_tool
ToolHandle< BYTESTREAMTOOL > m_tool
Definition: TileL2ContByteStreamCnv.h:86
TileROD_Decoder
Decodes the different TileCal ROD subfragment types in bytestream data and fills TileDigitsContainer,...
Definition: TileROD_Decoder.h:119
TileL2ContByteStreamCnv::storageType
static long storageType()
Definition: TileL2ContByteStreamCnv.cxx:74
TileL2ContByteStreamTool
This AlgTool class provides conversion from TileL2Container to ByteStream and fill it in RawEvent.
Definition: TileL2ContByteStreamTool.h:45
TileL2ContByteStreamCnv::m_robSvc
ServiceHandle< IROBDataProviderSvc > m_robSvc
Pointer to IROBDataProviderSvc.
Definition: TileL2ContByteStreamCnv.h:95
TileL2ContByteStreamCnv::initialize
virtual StatusCode initialize() override
Definition: TileL2ContByteStreamCnv.cxx:76
python.LArCondContChannels.decoder
decoder
def channelSelection(self, channelList, groupType): if groupType == self.SingleGroup: pass elif group...
Definition: LArCondContChannels.py:618
RecyclableDataObject.h
Helper for recycling objects from event to event.
TileL2ContByteStreamCnv::createRepConst
virtual StatusCode createRepConst(DataObject *pObj, IOpaqueAddress *&pAddr) const override
Convert the transient object to the requested representation.
Definition: TileL2ContByteStreamCnv.cxx:128
TileL2ContByteStreamCnv::BYTESTREAMTOOL
TileL2ContByteStreamTool BYTESTREAMTOOL
Definition: TileL2ContByteStreamCnv.h:72
TileL2ContByteStreamCnv::m_hid2re
const TileHid2RESrcID * m_hid2re
Pointer to TileHid2RESrcID.
Definition: TileL2ContByteStreamCnv.h:101
IByteStreamEventAccess
interface for accessing raw data .
Definition: IByteStreamEventAccess.h:17
AthConstConverter
Gaudi converter base class with const interfaces.
Definition: AthConstConverter.h:33
TileL2ContByteStreamCnv::ATLAS_THREAD_SAFE
Athena::RecyclableDataQueue< TileRecyclableL2Container > m_queue ATLAS_THREAD_SAFE
Queue of data objects to recycle.
Definition: TileL2ContByteStreamCnv.h:104
Athena::RecyclableDataQueue< TileRecyclableL2Container >
TileHid2RESrcID
This class provides conversion between fragment ID and RESrcID.
Definition: TileHid2RESrcID.h:28
SG_BASE
SG_BASE(TileRecyclableL2Container, TileL2Container)
IROBDataProviderSvc
Interface class for managing ROB for both online and offline.
Definition: IROBDataProviderSvc.h:25
StoreGateSvc
The Athena Transient Store API.
Definition: StoreGateSvc.h:128
ByteStreamCnvSvc
Gaudi Conversion Service class for ByteStream Persistency.
Definition: ByteStreamCnvSvc.h:34
TileL2ContByteStreamCnv::m_storeGate
ServiceHandle< StoreGateSvc > m_storeGate
Pointer to StoreGateSvc.
Definition: TileL2ContByteStreamCnv.h:92
TileL2ContByteStreamCnv::classID
static const CLID & classID()
Definition: TileL2ContByteStreamCnv.cxx:72
BaseInfo.h
Provide an interface for finding inheritance information at run time.
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
TileL2ContByteStreamCnv::repSvcType
virtual long repSvcType() const override
Storage type and class ID.
Definition: TileL2ContByteStreamCnv.h:80
AthConstConverter.h
Gaudi converter base class with const interfaces.
TileL2ContByteStreamCnv
This AthConstConverter class provides conversion between ByteStream and TileL2Container.
Definition: TileL2ContByteStreamCnv.h:68
TileL2ContByteStreamCnv::createObjConst
virtual StatusCode createObjConst(IOpaqueAddress *pAddr, DataObject *&pObj) const override
Create the transient representation of an object.
Definition: TileL2ContByteStreamCnv.cxx:100
TileL2ContByteStreamCnv::TileL2ContByteStreamCnv
TileL2ContByteStreamCnv(ISvcLocator *svcloc)
Definition: TileL2ContByteStreamCnv.cxx:60
TileL2ContByteStreamCnv::m_decoder
ToolHandle< TileROD_Decoder > m_decoder
Pointer to TileROD_Decoder.
Definition: TileL2ContByteStreamCnv.h:98
CnvFactory
Abstract factory to create the converter.
Definition: ToyConverter.h:16
CLID
uint32_t CLID
The Class ID type.
Definition: Event/xAOD/xAODCore/xAODCore/ClassID_traits.h:47
TileRecyclableL2Container::TileRecyclableL2Container
TileRecyclableL2Container(const TileROD_Decoder &decoder)
Definition: TileL2ContByteStreamCnv.cxx:35
TileL2ContByteStreamCnv::finalize
virtual StatusCode finalize() override
Definition: TileL2ContByteStreamCnv.cxx:160
TileRecyclableL2Container::recycle
void recycle()
Recycle this object for use in another event.
Definition: TileL2ContByteStreamCnv.cxx:52
TileRecyclableL2Container
Definition: TileL2ContByteStreamCnv.h:36
TileContainer.h
TileL2ContByteStreamCnv::m_byteStreamEventAccess
ServiceHandle< IByteStreamEventAccess > m_byteStreamEventAccess
Definition: TileL2ContByteStreamCnv.h:88
checker_macros.h
Define macros for attributes used to control the static checker.
TileContainer
Definition: TileContainer.h:38
TileL2ContByteStreamCnv::m_byteStreamCnvSvc
ByteStreamCnvSvc * m_byteStreamCnvSvc
Definition: TileL2ContByteStreamCnv.h:89
ServiceHandle< IByteStreamEventAccess >