ATLAS Offline Software
L1TopoByteStreamCnv.h
Go to the documentation of this file.
1 // Dear emacs, this is -*- c++ -*-
2 
3 /*
4  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
5 */
6 
7 #ifndef L1TOPOBYTESTREAM_L1TOPOBYTESTREAMCNV_H
8 #define L1TOPOBYTESTREAM_L1TOPOBYTESTREAMCNV_H
9 
10 // Gaudi/Athena include(s):
11 #include "GaudiKernel/ServiceHandle.h"
12 #include "GaudiKernel/ToolHandle.h"
13 
16 
18 
19 // Local include(s):
20 #include "L1TopoByteStreamTool.h"
21 
22 // Forward declaration(s):
23 class L1TopoSrcIdMap;
24 
41 
42 public:
44  L1TopoByteStreamCnv(ISvcLocator* svcloc);
45 
46  public:
49 
51  virtual StatusCode initialize();
54  virtual StatusCode createObjConst(IOpaqueAddress* pAddr, DataObject*& pObj) const;
57  virtual StatusCode createRepConst(DataObject* pObj, IOpaqueAddress*& pAddr) const;
58 
60  virtual long repSvcType() const { return i_repSvcType(); }
62  static long storageType();
64  static const CLID& classID();
65 
66  private:
68  ToolHandle<L1TopoByteStreamTool> m_tool;
69 
72 
77 
78 }; // class L1TopoByteStreamCnv
79 
80 #endif // L1TOPOBYTESTREAM_L1TOPOBYTESTREAMCNV_H
L1TopoByteStreamCnv::createObjConst
virtual StatusCode createObjConst(IOpaqueAddress *pAddr, DataObject *&pObj) const
Function creating the L1TopoRDOCollection object from a L1Topo ROB fragment.
Definition: L1TopoByteStreamCnv.cxx:118
L1TopoByteStreamCnv::m_robDataProvider
ServiceHandle< IROBDataProviderSvc > m_robDataProvider
Service used when reading the BS data.
Definition: L1TopoByteStreamCnv.h:74
L1TopoSrcIdMap
This class provides conversion between Lower level Source ID to higher level source ID for L1Topo Byt...
Definition: L1TopoSrcIdMap.h:17
L1TopoByteStreamCnv::repSvcType
virtual long repSvcType() const
Function needed by the framework.
Definition: L1TopoByteStreamCnv.h:60
ROBDataProviderSvc.h
L1TopoByteStreamCnv::m_srcIdMap
L1TopoSrcIdMap * m_srcIdMap
Object storing the various IDs of the CTP fragment.
Definition: L1TopoByteStreamCnv.h:71
IByteStreamEventAccess.h
AthConstConverter
Gaudi converter base class with const interfaces.
Definition: AthConstConverter.h:33
L1TopoByteStreamCnv::L1TopoByteStreamCnv
L1TopoByteStreamCnv(ISvcLocator *svcloc)
Standard constructor.
Definition: L1TopoByteStreamCnv.cxx:28
L1TopoByteStreamCnv::classID
static const CLID & classID()
Function needed by the framework.
Definition: L1TopoByteStreamCnv.cxx:50
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.
L1TopoByteStreamCnv::m_tool
ToolHandle< L1TopoByteStreamTool > m_tool
Tool doing the actual conversion.
Definition: L1TopoByteStreamCnv.h:68
CLID
uint32_t CLID
The Class ID type.
Definition: Event/xAOD/xAODCore/xAODCore/ClassID_traits.h:47
L1TopoByteStreamCnv::createRepConst
virtual StatusCode createRepConst(DataObject *pObj, IOpaqueAddress *&pAddr) const
Function creating the L1Topo ROB fragment from a L1TopoRDOCollection object.
Definition: L1TopoByteStreamCnv.cxx:147
L1TopoByteStreamCnv::initialize
virtual StatusCode initialize()
Function connecting to all the needed services/tools.
Definition: L1TopoByteStreamCnv.cxx:61
L1TopoByteStreamCnv
ByteStream converter for the L1TopoRDOCollection.
Definition: L1TopoByteStreamCnv.h:40
L1TopoByteStreamCnv::~L1TopoByteStreamCnv
~L1TopoByteStreamCnv()
Standard destructor.
Definition: L1TopoByteStreamCnv.cxx:39
L1TopoByteStreamCnv::storageType
static long storageType()
Function needed by the framework.
Definition: L1TopoByteStreamCnv.cxx:54
L1TopoByteStreamCnv::m_ByteStreamEventAccess
ServiceHandle< IByteStreamEventAccess > m_ByteStreamEventAccess
Service used when writing the BS data.
Definition: L1TopoByteStreamCnv.h:76
ServiceHandle< IROBDataProviderSvc >
L1TopoByteStreamTool.h