ATLAS Offline Software
LArRawScContByteStreamCnv.h
Go to the documentation of this file.
1 //Dear emacs, this is -*- c++ -*-
2 
3 /*
4  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
5 */
6 
7 #ifndef LARBYTESTREAM_LARRAWSCCONTRAWEVENTCNV_H
8 #define LARBYTESTREAM_LARRAWSCCONTRAWEVENTCNV_H
9 
10 #include <stdint.h>
11 #include <map>
12 #include <string>
13 #include "GaudiKernel/Converter.h"
14 #include "ByteStreamData/RawEvent.h"
16 
17 class DataObject;
18 class StatusCode;
19 class IAddressCreator;
21 class StoreGateSvc;
22 class MsgStream;
23 class LArDigitContainer;
24 class IROBDataProviderSvc;
25 class ByteStreamCnvSvc;
26 class LArABBADecoder;
27 class LArLATOMEDecoder;
28 
29 // Abstract factory to create the converter
30 template <class TYPE> class CnvFactory;
31 
33 
34 public:
35  LArRawScContByteStreamCnv(ISvcLocator* svcloc);
37 
38  virtual StatusCode initialize();
39  virtual StatusCode createObj(IOpaqueAddress* pAddr, DataObject*& pObj);
40  virtual StatusCode createRep(DataObject* pObj, IOpaqueAddress*& pAddr);
41 
43  virtual long repSvcType() const { return i_repSvcType(); }
44  static long storageType() { return ByteStreamAddress::storageType(); }
45  static const CLID& classID();
46 
47 private:
48 
49  MsgStream* m_log;
54 };
55 #endif
56 
57 
58 
LArLATOMEDecoder
Definition: LArLATOMEDecoder.h:61
LArRawScContByteStreamCnv::m_storeGate
StoreGateSvc * m_storeGate
Definition: LArRawScContByteStreamCnv.h:53
LArRawScContByteStreamCnv::m_scTool
LArLATOMEDecoder * m_scTool
Definition: LArRawScContByteStreamCnv.h:50
IByteStreamEventAccess
interface for accessing raw data .
Definition: IByteStreamEventAccess.h:17
LArRawScContByteStreamCnv::repSvcType
virtual long repSvcType() const
Storage type and class ID.
Definition: LArRawScContByteStreamCnv.h:43
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
RawEvent.h
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
CnvFactory
Abstract factory to create the converter.
Definition: ToyConverter.h:16
ByteStreamAddress.h
CLID
uint32_t CLID
The Class ID type.
Definition: Event/xAOD/xAODCore/xAODCore/ClassID_traits.h:47
LArRawScContByteStreamCnv::m_rdpSvc
IROBDataProviderSvc * m_rdpSvc
Definition: LArRawScContByteStreamCnv.h:52
ByteStreamAddress::storageType
static constexpr long storageType()
Definition: ByteStreamAddress.h:51
Converter
Definition: Converter.h:27
LArRawScContByteStreamCnv::initialize
virtual StatusCode initialize()
Definition: LArRawScContByteStreamCnv.cxx:51
LArRawScContByteStreamCnv::classID
static const CLID & classID()
Definition: LArRawScContByteStreamCnv.cxx:45
LArRawScContByteStreamCnv
Definition: LArRawScContByteStreamCnv.h:32
LArRawScContByteStreamCnv::~LArRawScContByteStreamCnv
virtual ~LArRawScContByteStreamCnv()
Definition: LArRawScContByteStreamCnv.cxx:40
LArDigitContainer
Container class for LArDigit.
Definition: LArDigitContainer.h:24
LArRawScContByteStreamCnv::storageType
static long storageType()
Definition: LArRawScContByteStreamCnv.h:44
LArRawScContByteStreamCnv::m_ByteStreamEventAccess
ByteStreamCnvSvc * m_ByteStreamEventAccess
Definition: LArRawScContByteStreamCnv.h:51
LArABBADecoder
Definition: LArABBADecoder.h:29
LArRawScContByteStreamCnv::LArRawScContByteStreamCnv
LArRawScContByteStreamCnv(ISvcLocator *svcloc)
Definition: LArRawScContByteStreamCnv.cxx:37
LArRawScContByteStreamCnv::m_log
MsgStream * m_log
Definition: LArRawScContByteStreamCnv.h:49
LArRawScContByteStreamCnv::createObj
virtual StatusCode createObj(IOpaqueAddress *pAddr, DataObject *&pObj)
Definition: LArRawScContByteStreamCnv.cxx:110
LArRawScContByteStreamCnv::createRep
virtual StatusCode createRep(DataObject *pObj, IOpaqueAddress *&pAddr)
Definition: LArRawScContByteStreamCnv.cxx:169