ATLAS Offline Software
PpmByteStreamAuxCnv.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef TRIGT1CALOBYTESTREAM_PPMBYTESTREAMAUXCNV_H
6 #define TRIGT1CALOBYTESTREAM_PPMBYTESTREAMAUXCNV_H
7 
8 #include <string>
9 
10 #include "GaudiKernel/ClassID.h"
11 #include "GaudiKernel/Converter.h"
12 #include "GaudiKernel/MsgStream.h"
13 #include "GaudiKernel/ServiceHandle.h"
14 #include "GaudiKernel/ToolHandle.h"
15 
17 
18 class DataObject;
19 class IOpaqueAddress;
20 class ISvcLocator;
21 class StatusCode;
22 
23 template <typename> class CnvFactory;
24 
25 
26 
28 
29 namespace LVL1BS {
30 class PpmByteStreamReadV1V2Tool;
31 
38 
39 public:
40  PpmByteStreamAuxCnv(ISvcLocator* svcloc);
41 
42  virtual ~PpmByteStreamAuxCnv(){};
43 
44  virtual StatusCode initialize();
46  virtual StatusCode createObj(IOpaqueAddress* pAddr, DataObject*& pObj);
48  virtual StatusCode createRep(DataObject* pObj, IOpaqueAddress*& pAddr);
49 
50  // Storage type and class ID
51  virtual long repSvcType() const { return i_repSvcType(); }
52  static long storageType();
53 
54  static const CLID& classID();
55 private:
56 
57 private:
58 
60  std::string m_name;
61 
63  ToolHandle<PpmByteStreamReadV1V2Tool> m_readTool;
64  ToolHandle<ZdcByteStreamReadV1V2Tool> m_zdcTool;
65 };
66 
67 
68 
69 } // end namespace
70 #endif // not TRIGT1CALOBYTESTREAM_PPMBYTESTREAMAUXCNV_H
LVL1BS::PpmByteStreamAuxCnv::classID
static const CLID & classID()
Definition: PpmByteStreamAuxCnv.cxx:47
LVL1BS::PpmByteStreamAuxCnv::m_zdcTool
ToolHandle< ZdcByteStreamReadV1V2Tool > m_zdcTool
Definition: PpmByteStreamAuxCnv.h:64
LVL1BS::PpmByteStreamAuxCnv
ByteStream converter for Pre-processor Module DAQ data / TriggerTowers.
Definition: PpmByteStreamAuxCnv.h:37
LVL1BS::PpmByteStreamAuxCnv::repSvcType
virtual long repSvcType() const
Definition: PpmByteStreamAuxCnv.h:51
LVL1BS::PpmByteStreamAuxCnv::m_readTool
ToolHandle< PpmByteStreamReadV1V2Tool > m_readTool
Do the main job - retrieve xAOD TriggerTowers from robs.
Definition: PpmByteStreamAuxCnv.h:63
LVL1BS::PpmByteStreamAuxCnv::~PpmByteStreamAuxCnv
virtual ~PpmByteStreamAuxCnv()
Definition: PpmByteStreamAuxCnv.h:42
LVL1BS::PpmByteStreamAuxCnv::PpmByteStreamAuxCnv
PpmByteStreamAuxCnv(ISvcLocator *svcloc)
Definition: PpmByteStreamAuxCnv.cxx:38
LVL1BS::PpmByteStreamAuxCnv::initialize
virtual StatusCode initialize()
Definition: PpmByteStreamAuxCnv.cxx:58
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthMessaging
Class to provide easy MsgStream access and capabilities.
Definition: AthMessaging.h:55
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
Converter
Definition: Converter.h:27
LVL1BS::PpmByteStreamAuxCnv::createRep
virtual StatusCode createRep(DataObject *pObj, IOpaqueAddress *&pAddr)
Create ByteStream from TriggerTowers.
Definition: PpmByteStreamAuxCnv.cxx:107
ZdcByteStreamReadV1V2Tool.h
AthMessaging.h
LVL1BS::PpmByteStreamAuxCnv::m_name
std::string m_name
Converter name.
Definition: PpmByteStreamAuxCnv.h:60
LVL1BS
Definition: ZdcByteStreamReadV1V2Tool.h:47
LVL1BS::PpmByteStreamAuxCnv::createObj
virtual StatusCode createObj(IOpaqueAddress *pAddr, DataObject *&pObj)
Create TriggerTowers from ByteStream.
Definition: PpmByteStreamAuxCnv.cxx:68
LVL1BS::PpmByteStreamAuxCnv::storageType
static long storageType()
Definition: PpmByteStreamAuxCnv.cxx:51