ATLAS Offline Software
TileDigitsContByteStreamCnv.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 
6 #ifndef TILEBYTESTREAM_TILEDIGITS_BYTESTREAMCNV_H
7 #define TILEBYTESTREAM_TILEDIGITS_BYTESTREAMCNV_H
8 
9 
13 #include "GaudiKernel/ToolHandle.h"
14 #include "GaudiKernel/ServiceHandle.h"
15 
17 
18 
19 class DataObject;
20 class StatusCode;
21 class IAddressCreator;
23 class MsgStream;
24 class TileDigitsContainer;
26 class ByteStreamCnvSvc;
27 class IROBDataProviderSvc;
28 class TileHid2RESrcID;
29 class TileROD_Decoder;
30 
31 #include <vector>
32 
33 // Abstract factory to create the converter
34 template <class TYPE> class CnvFactory;
35 
46  : public AthConstConverter
47 {
48 
49  public:
50  TileDigitsContByteStreamCnv(ISvcLocator* svcloc);
51 
53 
54  virtual StatusCode initialize() override;
55  virtual StatusCode createObjConst(IOpaqueAddress* pAddr, DataObject*& pObj) const override;
56  virtual StatusCode createRepConst(DataObject* pObj, IOpaqueAddress*& pAddr) const override;
57  virtual StatusCode finalize() override;
58 
60  virtual long repSvcType() const override { return i_repSvcType(); }
61  static long storageType();
62  static const CLID& classID();
63 
64  private:
65  // BYTESTREAMTOOL* m_tool ;
66  ToolHandle<TileDigitsContByteStreamTool> m_tool;
67 
70 
73 
75  ToolHandle<TileROD_Decoder> m_decoder;
76 
79 
82 };
83 #endif
84 
TileROD_Decoder
Decodes the different TileCal ROD subfragment types in bytestream data and fills TileDigitsContainer,...
Definition: TileROD_Decoder.h:119
TileDigitsContByteStreamCnv::m_byteStreamCnvSvc
ByteStreamCnvSvc * m_byteStreamCnvSvc
Definition: TileDigitsContByteStreamCnv.h:69
TileDigitsContByteStreamCnv::m_decoder
ToolHandle< TileROD_Decoder > m_decoder
Pointer to TileROD_Decoder.
Definition: TileDigitsContByteStreamCnv.h:75
TileDigitsContByteStreamCnv::createRepConst
virtual StatusCode createRepConst(DataObject *pObj, IOpaqueAddress *&pAddr) const override
Convert the transient object to the requested representation.
Definition: TileDigitsContByteStreamCnv.cxx:148
TileDigitsContByteStreamCnv::repSvcType
virtual long repSvcType() const override
Storage type and class ID.
Definition: TileDigitsContByteStreamCnv.h:60
RecyclableDataObject.h
Helper for recycling objects from event to event.
TileDigitsContByteStreamCnv::initialize
virtual StatusCode initialize() override
Definition: TileDigitsContByteStreamCnv.cxx:51
TileDigitsContByteStreamCnv
This AthConstConverter class provides conversion from ByteStream to TileDigitsContainer.
Definition: TileDigitsContByteStreamCnv.h:47
TileDigitsContByteStreamCnv::m_hid2re
const TileHid2RESrcID * m_hid2re
Pointer to TileHid2RESrcID.
Definition: TileDigitsContByteStreamCnv.h:78
IByteStreamEventAccess
interface for accessing raw data .
Definition: IByteStreamEventAccess.h:17
TileDigitsContByteStreamCnv::BYTESTREAMTOOL
TileDigitsContByteStreamTool BYTESTREAMTOOL
Definition: TileDigitsContByteStreamCnv.h:52
AthConstConverter
Gaudi converter base class with const interfaces.
Definition: AthConstConverter.h:33
TileDigitsContainer
Definition: TileDigitsContainer.h:13
Athena::RecyclableDataQueue
Holder for recyclable objects.
Definition: RecyclableDataObject.h:126
TileDigitsContByteStreamCnv::createObjConst
virtual StatusCode createObjConst(IOpaqueAddress *pAddr, DataObject *&pObj) const override
Create the transient representation of an object.
Definition: TileDigitsContByteStreamCnv.cxx:73
TileHid2RESrcID
This class provides conversion between fragment ID and RESrcID.
Definition: TileHid2RESrcID.h:28
IROBDataProviderSvc
Interface class for managing ROB for both online and offline.
Definition: IROBDataProviderSvc.h:25
ByteStreamCnvSvc
Gaudi Conversion Service class for ByteStream Persistency.
Definition: ByteStreamCnvSvc.h:34
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthConstConverter.h
Gaudi converter base class with const interfaces.
TileMutableDigitsContainer.h
Helper for holding non-const raw data prior to recording in SG.
TileDigitsContByteStreamCnv::m_tool
ToolHandle< TileDigitsContByteStreamTool > m_tool
Definition: TileDigitsContByteStreamCnv.h:66
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
TileDigitsContByteStreamCnv::ATLAS_THREAD_SAFE
Athena::RecyclableDataQueue< TileMutableDigitsContainer > m_queue ATLAS_THREAD_SAFE
Queue of data objects to recycle.
Definition: TileDigitsContByteStreamCnv.h:81
TileDigitsContByteStreamCnv::m_byteStreamEventAccess
ServiceHandle< IByteStreamEventAccess > m_byteStreamEventAccess
Definition: TileDigitsContByteStreamCnv.h:68
TileDigitsContByteStreamCnv::TileDigitsContByteStreamCnv
TileDigitsContByteStreamCnv(ISvcLocator *svcloc)
Definition: TileDigitsContByteStreamCnv.cxx:36
TileDigitsContByteStreamTool
AlgTool class to provide conversion from TileDigitsContainer to ByteStream, and fill it in RawEvent.
Definition: TileDigitsContByteStreamTool.h:29
TileDigitsContByteStreamCnv::m_robSvc
ServiceHandle< IROBDataProviderSvc > m_robSvc
Pointer to IROBDataProviderSvc.
Definition: TileDigitsContByteStreamCnv.h:72
TileDigitsContByteStreamCnv::classID
static const CLID & classID()
Definition: TileDigitsContByteStreamCnv.cxx:47
checker_macros.h
Define macros for attributes used to control the static checker.
TileDigitsContByteStreamCnv::finalize
virtual StatusCode finalize() override
Definition: TileDigitsContByteStreamCnv.cxx:181
TileDigitsContByteStreamCnv::storageType
static long storageType()
Definition: TileDigitsContByteStreamCnv.cxx:49
ServiceHandle< IByteStreamEventAccess >