ATLAS Offline Software
Loading...
Searching...
No Matches
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
15class DataObject;
17class IOpaqueAddress;
19class ISvcLocator;
20class StatusCode;
21
22template <typename> class CnvFactory;
23
24
25namespace LVL1BS {
26
28
33
35
36public:
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
52private:
54 ToolHandle<LVL1BS::PpmByteStreamV1Tool> m_tool;
55
60};
61
62} // end namespace
63
64#endif
Gaudi converter base class with const interfaces.
uint32_t CLID
The Class ID type.
AthConstConverter(long storage_type, const CLID &class_type, ISvcLocator *svc, const std::string &name)
Abstract factory to create the converter.
Interface for accessing raw data.
Interface class for managing ROB for both online and offline.
ToolHandle< LVL1BS::PpmByteStreamV1Tool > m_tool
Tool that does the actual work.
virtual long repSvcType() const override
static const CLID & classID()
virtual StatusCode createRepConst(DataObject *pObj, IOpaqueAddress *&pAddr) const override
Create ByteStream from TriggerTowers.
ServiceHandle< IROBDataProviderSvc > m_robDataProvider
Service for reading bytestream.
ServiceHandle< IByteStreamEventAccess > m_ByteStreamEventAccess
Service for writing bytestream.
virtual StatusCode createObjConst(IOpaqueAddress *pAddr, DataObject *&pObj) const override
Create TriggerTowers from ByteStream.
PpmByteStreamV1Cnv(ISvcLocator *svcloc)
virtual StatusCode initialize() override
Tool to perform ROB fragments to trigger towers and trigger towers to raw data conversions.