ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Trigger
TrigT1
TrigT1CaloByteStream
src
xaod
CmxJetHitsByteStreamxAODCnv.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#include <vector>
6
#include <stdint.h>
7
8
#include "
ByteStreamCnvSvcBase/ByteStreamAddress.h
"
9
#include "
ByteStreamCnvSvcBase/IROBDataProviderSvc.h
"
10
11
#include "
ByteStreamData/RawEvent.h
"
12
#include "
ByteStreamData/ROBData.h
"
13
14
#include "
AthenaKernel/errorcheck.h
"
15
#include "GaudiKernel/DataObject.h"
16
#include "GaudiKernel/IOpaqueAddress.h"
17
#include "GaudiKernel/IRegistry.h"
18
#include "GaudiKernel/ISvcLocator.h"
19
#include "GaudiKernel/StatusCode.h"
20
21
#include "
AthenaKernel/ClassID_traits.h
"
22
#include "
AthenaKernel/StorableConversions.h
"
23
#include "
StoreGate/StoreGateSvc.h
"
24
25
#include "
xAODTrigL1Calo/CMXJetHits.h
"
26
#include "
xAODTrigL1Calo/CMXJetHitsContainer.h
"
27
#include "
xAODTrigL1Calo/CMXJetHitsAuxContainer.h
"
28
29
#include "
CmxJetHitsByteStreamxAODCnv.h
"
30
31
namespace
LVL1BS
{
32
33
CmxJetHitsByteStreamxAODCnv::CmxJetHitsByteStreamxAODCnv
(ISvcLocator* svcloc) :
34
Converter
(
storageType
(),
classID
(), svcloc),
35
AthMessaging
(svcloc != 0 ? msgSvc() : 0,
"CmxJetHitsByteStreamxAODCnv"
),
36
m_name
(
"CmxJetHitsByteStreamxAODCnv"
)
37
{
38
39
}
40
41
// CLID
42
43
CLID
CmxJetHitsByteStreamxAODCnv::classID
() {
44
return
ClassID_traits<xAOD::CMXJetHitsContainer>::ID
();
45
}
46
47
long
CmxJetHitsByteStreamxAODCnv::storageType
()
48
{
49
return
ByteStreamAddress::storageType
();
50
}
51
52
// Init method gets all necessary services etc.
53
54
55
StatusCode
CmxJetHitsByteStreamxAODCnv::initialize
() {
56
ATH_MSG_DEBUG
(
"Initializing "
<<
m_name
);
57
58
CHECK
(Converter::initialize());
59
//CHECK(m_readTool.retrieve());
60
return
StatusCode::SUCCESS;
61
}
62
63
// createObj should create the RDO from bytestream.
64
65
StatusCode
CmxJetHitsByteStreamxAODCnv::createObj
(IOpaqueAddress* pAddr,
66
DataObject*& pObj) {
67
ATH_MSG_DEBUG
(
"createObj() called"
);
68
// -------------------------------------------------------------------------
69
ByteStreamAddress
*pBS_Addr =
dynamic_cast<
ByteStreamAddress
*
>
(pAddr);
70
if
(not pBS_Addr)
return
StatusCode::FAILURE;
71
72
// -------------------------------------------------------------------------
73
const
std::string nm = *(pBS_Addr->par());
74
const
std::string nmAux = nm +
"Aux."
;
75
ATH_MSG_DEBUG
(
"Creating xAOD::CmxJetHits interface objects '"
<< nm <<
"'"
);
76
77
xAOD::CMXJetHitsContainer
*
const
cmxJetContainer =
78
new
xAOD::CMXJetHitsContainer
;
79
80
// Create link with AUX container
81
DataLink<xAOD::CMXJetHitsAuxContainer>
link(nmAux);
82
ATH_MSG_DEBUG
(
"Creating store with data link to '"
<< nmAux);
83
84
for
(
size_t
i=0; i < link->size(); ++i){
85
cmxJetContainer->
push_back
(
new
xAOD::CMXJetHits
());
86
}
87
// ==========================================================================
88
cmxJetContainer->setStore(link);
89
pObj =
SG::asStorable
(cmxJetContainer);
90
ATH_MSG_DEBUG
(
"Number of CMXJetHits created: "
<< cmxJetContainer->
size
());
91
92
return
StatusCode::SUCCESS;
93
}
94
95
// createRep should create the bytestream from RDOs.
96
97
StatusCode
CmxJetHitsByteStreamxAODCnv::createRep
(DataObject*
/*pObj*/
,
98
IOpaqueAddress*&
/*pAddr*/
) {
99
return
StatusCode::FAILURE;
100
}
101
102
}
// end namespace
ATH_MSG_DEBUG
#define ATH_MSG_DEBUG(x)
Definition
AthMsgStreamMacros.h:29
ByteStreamAddress.h
CMXJetHitsAuxContainer.h
CMXJetHitsContainer.h
CmxJetHitsByteStreamxAODCnv.h
ClassID_traits.h
a traits class that associates a CLID to a type T It also detects whether T inherits from Gaudi DataO...
errorcheck.h
Helpers for checking error return status codes and reporting errors.
CHECK
#define CHECK(...)
Evaluate an expression and check for errors.
Definition
Control/AthenaKernel/AthenaKernel/errorcheck.h:422
CLID
uint32_t CLID
The Class ID type.
Definition
Event/xAOD/xAODCore/xAODCore/ClassID_traits.h:47
CMXJetHits.h
IROBDataProviderSvc.h
ROBData.h
Defines the ROB data entity. The ROB data is an abstract entity that is used to decouple the raw even...
RawEvent.h
StorableConversions.h
convert to and from a SG storable
StoreGateSvc.h
AthMessaging::AthMessaging
AthMessaging(IMessageSvc *msgSvc, const std::string &name)
Constructor.
Definition
AthMessaging.cxx:13
ByteStreamAddress
IOpaqueAddress for ByteStreamCnvSvc, with ROB ids.
Definition
ByteStreamAddress.h:28
ByteStreamAddress::storageType
static constexpr long storageType()
Definition
ByteStreamAddress.h:51
Converter::Converter
Converter()
Definition
Converter.h:29
DataLink
Object reference supporting deferred reading from StoreGate.
Definition
AthLinks/DataLink.h:93
DataVector::push_back
value_type push_back(value_type pElem)
Add an element to the end of the collection.
DataVector::size
size_type size() const noexcept
Returns the number of elements in the collection.
LVL1BS::CmxJetHitsByteStreamxAODCnv::createRep
virtual StatusCode createRep(DataObject *pObj, IOpaqueAddress *&pAddr)
Create ByteStream from TriggerTowers.
Definition
CmxJetHitsByteStreamxAODCnv.cxx:97
LVL1BS::CmxJetHitsByteStreamxAODCnv::createObj
virtual StatusCode createObj(IOpaqueAddress *pAddr, DataObject *&pObj)
Create TriggerTowers from ByteStream.
Definition
CmxJetHitsByteStreamxAODCnv.cxx:65
LVL1BS::CmxJetHitsByteStreamxAODCnv::m_name
std::string m_name
Converter name.
Definition
CmxJetHitsByteStreamxAODCnv.h:53
LVL1BS::CmxJetHitsByteStreamxAODCnv::CmxJetHitsByteStreamxAODCnv
CmxJetHitsByteStreamxAODCnv(ISvcLocator *svcloc)
Definition
CmxJetHitsByteStreamxAODCnv.cxx:33
LVL1BS::CmxJetHitsByteStreamxAODCnv::initialize
virtual StatusCode initialize()
Definition
CmxJetHitsByteStreamxAODCnv.cxx:55
LVL1BS::CmxJetHitsByteStreamxAODCnv::storageType
static long storageType()
Definition
CmxJetHitsByteStreamxAODCnv.cxx:47
LVL1BS::CmxJetHitsByteStreamxAODCnv::classID
static CLID classID()
Definition
CmxJetHitsByteStreamxAODCnv.cxx:43
LVL1BS
Definition
ZdcModifySlices.h:10
SG::asStorable
DataObject * asStorable(SG::DataObjectSharedPtr< T > pObject)
Definition
DataObjectSharedPtr.h:31
xAOD::CMXJetHitsContainer
CMXJetHitsContainer_v1 CMXJetHitsContainer
Define the latest version of the CMXJetHits class.
Definition
CMXJetHitsContainer.h:18
xAOD::CMXJetHits
CMXJetHits_v1 CMXJetHits
Define the latest version of the CMXJetHits class.
Definition
Event/xAOD/xAODTrigL1Calo/xAODTrigL1Calo/CMXJetHits.h:20
ClassID_traits::ID
static constexpr CLID ID()
Definition
Control/AthenaKernel/AthenaKernel/ClassID_traits.h:44
Generated on
for ATLAS Offline Software by
1.17.0