ATLAS Offline Software
Loading...
Searching...
No Matches
LArRawChannelContByteStreamCnv.h
Go to the documentation of this file.
1//Dear emacs, this is -*- c++ -*-
2
3/*
4 Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
5*/
6
7#ifndef LARBYTESTREAM_LARRAWCHANNELCONTRAWEVENTCNV_H
8#define LARBYTESTREAM_LARRAWCHANNELCONTRAWEVENTCNV_H
9
10#include <stdint.h>
11#include <map>
16#include "GaudiKernel/ToolHandle.h"
17#include "GaudiKernel/ServiceHandle.h"
18
19class DataObject;
20class StatusCode;
21class IAddressCreator;
25
26// Abstract factory to create the converter
27template <class TYPE> class CnvFactory;
28
30{
31 public:
32 LArRawChannelContByteStreamCnv(ISvcLocator* svcloc);
34
35
37
38 virtual StatusCode initialize() override;
39 virtual StatusCode createObjConst(IOpaqueAddress* pAddr, DataObject*& pObj) const override;
40 virtual StatusCode createRepConst(DataObject* pObj, IOpaqueAddress*& pAddr) const override;
41
43 virtual long repSvcType() const override { return i_repSvcType(); }
44 static long storageType() { return ByteStreamAddress::storageType(); }
45 static const CLID& classID();
46
47private:
48 ToolHandle<BYTESTREAMTOOL> m_tool;
51 mutable std::atomic<size_t> m_contSize;
52};
53#endif
Gaudi converter base class with const interfaces.
uint32_t CLID
The Class ID type.
AthConstConverter(long storage_type, const CLID &class_type, ISvcLocator *svc, const std::string &name)
static constexpr long storageType()
Abstract factory to create the converter.
interface for bytestream conversion services
virtual StatusCode createRepConst(DataObject *pObj, IOpaqueAddress *&pAddr) const override
Convert the transient object to the requested representation.
ServiceHandle< IROBDataProviderSvc > m_rdpSvc
LArRawDataContByteStreamTool BYTESTREAMTOOL
ServiceHandle< IByteStreamCnvSvc > m_byteStreamCnvSvc
virtual StatusCode createObjConst(IOpaqueAddress *pAddr, DataObject *&pObj) const override
Create the transient representation of an object.
virtual long repSvcType() const override
Storage type and class ID.
Container for LArRawChannel (IDC using LArRawChannelCollection)
An AlgTool class to help converting LAr raw data objects to/from ByteStream.