ATLAS Offline Software
PpmByteStreamV1Cnv.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 TRIGT1CALOBYTESTREAM_PPMBYTESTREAMV1CNV_H
6 #define TRIGT1CALOBYTESTREAM_PPMBYTESTREAMV1CNV_H
7 
8 #include <string>
9 
11 #include "GaudiKernel/ClassID.h"
12 #include "GaudiKernel/ServiceHandle.h"
13 #include "GaudiKernel/ToolHandle.h"
14 
15 class DataObject;
17 class IOpaqueAddress;
19 class ISvcLocator;
20 class StatusCode;
21 
22 template <typename> class CnvFactory;
23 
24 
25 namespace LVL1BS {
26 
27 class PpmByteStreamV1Tool;
28 
35 
36 public:
37  PpmByteStreamV1Cnv(ISvcLocator* svcloc);
38 
39  virtual ~PpmByteStreamV1Cnv();
40 
41  virtual StatusCode initialize() override;
43  virtual StatusCode createObjConst (IOpaqueAddress* pAddr, DataObject*& pObj) const override;
45  virtual StatusCode createRepConst (DataObject* pObj, IOpaqueAddress*& pAddr) const override;
46 
47  // Storage type and class ID
48  virtual long repSvcType() const override { return i_repSvcType(); }
49  static long storageType();
50  static const CLID& classID();
51 
52 private:
54  ToolHandle<LVL1BS::PpmByteStreamV1Tool> m_tool;
55 
60 };
61 
62 } // end namespace
63 
64 #endif
LVL1BS::PpmByteStreamV1Cnv::initialize
virtual StatusCode initialize() override
Definition: PpmByteStreamV1Cnv.cxx:62
LVL1BS::PpmByteStreamV1Cnv::PpmByteStreamV1Cnv
PpmByteStreamV1Cnv(ISvcLocator *svcloc)
Definition: PpmByteStreamV1Cnv.cxx:35
IByteStreamEventAccess
interface for accessing raw data .
Definition: IByteStreamEventAccess.h:17
AthConstConverter
Gaudi converter base class with const interfaces.
Definition: AthConstConverter.h:33
IROBDataProviderSvc
Interface class for managing ROB for both online and offline.
Definition: IROBDataProviderSvc.h:25
LVL1BS::PpmByteStreamV1Cnv::m_robDataProvider
ServiceHandle< IROBDataProviderSvc > m_robDataProvider
Service for reading bytestream.
Definition: PpmByteStreamV1Cnv.h:57
LVL1BS::PpmByteStreamV1Cnv
ByteStream converter for Pre-processor Module DAQ data / TriggerTowers.
Definition: PpmByteStreamV1Cnv.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.
LVL1BS::PpmByteStreamV1Cnv::~PpmByteStreamV1Cnv
virtual ~PpmByteStreamV1Cnv()
Definition: PpmByteStreamV1Cnv.cxx:43
CnvFactory
Abstract factory to create the converter.
Definition: ToyConverter.h:16
LVL1BS::PpmByteStreamV1Cnv::createObjConst
virtual StatusCode createObjConst(IOpaqueAddress *pAddr, DataObject *&pObj) const override
Create TriggerTowers from ByteStream.
Definition: PpmByteStreamV1Cnv.cxx:80
CLID
uint32_t CLID
The Class ID type.
Definition: Event/xAOD/xAODCore/xAODCore/ClassID_traits.h:47
LVL1BS::PpmByteStreamV1Cnv::m_tool
ToolHandle< LVL1BS::PpmByteStreamV1Tool > m_tool
Tool that does the actual work.
Definition: PpmByteStreamV1Cnv.h:54
LVL1BS::PpmByteStreamV1Cnv::createRepConst
virtual StatusCode createRepConst(DataObject *pObj, IOpaqueAddress *&pAddr) const override
Create ByteStream from TriggerTowers.
Definition: PpmByteStreamV1Cnv.cxx:119
LVL1BS::PpmByteStreamV1Cnv::m_ByteStreamEventAccess
ServiceHandle< IByteStreamEventAccess > m_ByteStreamEventAccess
Service for writing bytestream.
Definition: PpmByteStreamV1Cnv.h:59
LVL1BS::PpmByteStreamV1Cnv::classID
static const CLID & classID()
Definition: PpmByteStreamV1Cnv.cxx:49
LVL1BS
Definition: ZdcByteStreamReadV1V2Tool.h:47
LVL1BS::PpmByteStreamV1Cnv::repSvcType
virtual long repSvcType() const override
Definition: PpmByteStreamV1Cnv.h:48
LVL1BS::PpmByteStreamV1Cnv::storageType
static long storageType()
Definition: PpmByteStreamV1Cnv.cxx:54
ServiceHandle< IROBDataProviderSvc >