ATLAS Offline Software
CpmTowerByteStreamAuxCnv.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_CPMBYTESTREAMAUXCNV_H
6 #define TRIGT1CALOBYTESTREAM_CPMBYTESTREAMAUXCNV_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;
21 class ISvcLocator;
22 class StatusCode;
23 
24 template <typename> class CnvFactory;
25 
26 
27 
28 namespace LVL1BS {
29 class CpByteStreamV2Tool;
30 
37 
38 public:
39  CpmTowerByteStreamAuxCnv(ISvcLocator* svcloc);
40 
42 
43  virtual StatusCode initialize();
45  virtual StatusCode createObj(IOpaqueAddress* pAddr, DataObject*& pObj);
47  virtual StatusCode createRep(DataObject* pObj, IOpaqueAddress*& pAddr);
48 
49  // Storage type and class ID
50  virtual long repSvcType() const { return i_repSvcType(); }
51  static long storageType();
52 
53  static const CLID& classID();
54 private:
56  std::string m_name;
57 
59  ToolHandle<CpByteStreamV2Tool> m_cpmReadTool;
60 };
61 
62 
63 
64 } // end namespace
65 #endif
LVL1BS::CpmTowerByteStreamAuxCnv::createRep
virtual StatusCode createRep(DataObject *pObj, IOpaqueAddress *&pAddr)
Create ByteStream from TriggerTowers.
Definition: CpmTowerByteStreamAuxCnv.cxx:131
LVL1BS::CpmTowerByteStreamAuxCnv::createObj
virtual StatusCode createObj(IOpaqueAddress *pAddr, DataObject *&pObj)
Create TriggerTowers from ByteStream.
Definition: CpmTowerByteStreamAuxCnv.cxx:84
LVL1BS::CpmTowerByteStreamAuxCnv
ByteStream converter for Pre-processor Module DAQ data / TriggerTowers.
Definition: CpmTowerByteStreamAuxCnv.h:36
LVL1BS::CpmTowerByteStreamAuxCnv::classID
static const CLID & classID()
Definition: CpmTowerByteStreamAuxCnv.cxx:63
LVL1BS::CpmTowerByteStreamAuxCnv::m_name
std::string m_name
Converter name.
Definition: CpmTowerByteStreamAuxCnv.h:56
IROBDataProviderSvc
Interface class for managing ROB for both online and offline.
Definition: IROBDataProviderSvc.h:23
LVL1BS::CpmTowerByteStreamAuxCnv::CpmTowerByteStreamAuxCnv
CpmTowerByteStreamAuxCnv(ISvcLocator *svcloc)
Definition: CpmTowerByteStreamAuxCnv.cxx:55
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
LVL1BS::CpmTowerByteStreamAuxCnv::storageType
static long storageType()
Definition: CpmTowerByteStreamAuxCnv.cxx:67
LVL1BS::CpmTowerByteStreamAuxCnv::m_cpmReadTool
ToolHandle< CpByteStreamV2Tool > m_cpmReadTool
Do the main job - retrieve xAOD TriggerTowers from robs.
Definition: CpmTowerByteStreamAuxCnv.h:59
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
LVL1BS::CpmTowerByteStreamAuxCnv::repSvcType
virtual long repSvcType() const
Definition: CpmTowerByteStreamAuxCnv.h:50
Converter
Definition: Converter.h:27
LVL1BS::CpmTowerByteStreamAuxCnv::initialize
virtual StatusCode initialize()
Definition: CpmTowerByteStreamAuxCnv.cxx:74
AthMessaging.h
LVL1BS
Definition: ZdcModifySlices.h:10
LVL1BS::CpmTowerByteStreamAuxCnv::~CpmTowerByteStreamAuxCnv
virtual ~CpmTowerByteStreamAuxCnv()
Definition: CpmTowerByteStreamAuxCnv.h:41