ATLAS Offline Software
JepReadByteStreamV1V2Cnv.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_JEPREADBYTESTREAMV1V2CNV_H
6 #define TRIGT1CALOBYTESTREAM_JEPREADBYTESTREAMV1V2CNV_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;
16 class IOpaqueAddress;
18 class ISvcLocator;
19 class StatusCode;
20 
21 template <typename> class CnvFactory;
22 
23 
24 namespace LVL1BS {
25 
26 class JepByteStreamV1Tool;
27 class JepByteStreamV2Tool;
28 
36 template <typename Container>
38 
39 public:
40  JepReadByteStreamV1V2Cnv(ISvcLocator* svcloc);
41 
43 
44  virtual StatusCode initialize() override;
46  virtual StatusCode createObjConst (IOpaqueAddress* pAddr, DataObject*& pObj) const override;
47 
48  // Storage type and class ID
49  virtual long repSvcType() const override { return i_repSvcType(); }
50  static long storageType();
51  static const CLID& classID();
52 
53 private:
55  ToolHandle<LVL1BS::JepByteStreamV1Tool> m_tool1;
57  ToolHandle<LVL1BS::JepByteStreamV2Tool> m_tool2;
58 
61 };
62 
63 } // end namespace
64 
66 
67 #endif
LVL1BS::JepReadByteStreamV1V2Cnv::storageType
static long storageType()
LVL1BS::JepReadByteStreamV1V2Cnv::initialize
virtual StatusCode initialize() override
LVL1BS::JepReadByteStreamV1V2Cnv
ByteStream converter for JEP component containers which are unchanged post-LS1.
Definition: JepReadByteStreamV1V2Cnv.h:37
LVL1BS::JepReadByteStreamV1V2Cnv::m_tool1
ToolHandle< LVL1BS::JepByteStreamV1Tool > m_tool1
Tool that does the actual work pre-LS1.
Definition: JepReadByteStreamV1V2Cnv.h:55
AthConstConverter
Gaudi converter base class with const interfaces.
Definition: AthConstConverter.h:33
LVL1BS::JepReadByteStreamV1V2Cnv::m_robDataProvider
ServiceHandle< IROBDataProviderSvc > m_robDataProvider
Service for reading bytestream.
Definition: JepReadByteStreamV1V2Cnv.h:60
LVL1BS::JepReadByteStreamV1V2Cnv::JepReadByteStreamV1V2Cnv
JepReadByteStreamV1V2Cnv(ISvcLocator *svcloc)
IROBDataProviderSvc
Interface class for managing ROB for both online and offline.
Definition: IROBDataProviderSvc.h:23
LVL1BS::JepReadByteStreamV1V2Cnv::~JepReadByteStreamV1V2Cnv
virtual ~JepReadByteStreamV1V2Cnv()
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::JepReadByteStreamV1V2Cnv::classID
static const CLID & classID()
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
JepReadByteStreamV1V2Cnv.icc
LVL1BS::JepReadByteStreamV1V2Cnv::m_tool2
ToolHandle< LVL1BS::JepByteStreamV2Tool > m_tool2
Tool that does the actual work post-LS1.
Definition: JepReadByteStreamV1V2Cnv.h:57
LVL1BS::JepReadByteStreamV1V2Cnv::createObjConst
virtual StatusCode createObjConst(IOpaqueAddress *pAddr, DataObject *&pObj) const override
Create Container from ByteStream.
LVL1BS::JepReadByteStreamV1V2Cnv::repSvcType
virtual long repSvcType() const override
Definition: JepReadByteStreamV1V2Cnv.h:49
LVL1BS
Definition: ZdcModifySlices.h:10
ServiceHandle< IROBDataProviderSvc >