ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Event
xAOD
xAODPFlowAthenaPool
src
xAODTrackCaloClusterAuxContainerCnv_v1.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
// System include(s):
6
#include <stdexcept>
7
8
// Gaudi/Athena include(s):
9
#include "GaudiKernel/MsgStream.h"
10
11
// Core EDM include(s):
12
#include "
AthContainers/tools/copyAuxStoreThinned.h
"
13
14
// Local include(s):
15
#include "
xAODTrackCaloClusterAuxContainerCnv_v1.h
"
16
#include "
xAODPFlow/TrackCaloClusterContainer.h
"
17
#include "
xAODPFlow/versions/TrackCaloClusterContainer_v1.h
"
18
19
20
xAODTrackCaloClusterAuxContainerCnv_v1::xAODTrackCaloClusterAuxContainerCnv_v1
()
21
{
22
}
23
24
void
xAODTrackCaloClusterAuxContainerCnv_v1::
25
persToTrans
(
const
xAOD::TrackCaloClusterAuxContainer_v1
* oldObj,
26
xAOD::TrackCaloClusterAuxContainer
* newObj,
27
MsgStream&
/*log*/
)
const
{
28
29
// Clear the transient object:
30
newObj->
resize
( 0 );
31
32
// Copy the payload of the v1 object into the latest one by misusing
33
// the thinning code a bit...
34
SG::copyAuxStoreThinned
( *oldObj, *newObj,
nullptr
);
35
36
// Set up interface containers on top of them:
37
38
//The old uses v_
39
xAOD::TrackCaloClusterContainer_v1
oldInt;
40
for
(
size_t
i = 0; i < oldObj->
size
(); ++i ) {
41
oldInt.
push_back
(
new
xAOD::TrackCaloCluster_v1
() );
42
}
43
oldInt.setStore( oldObj );
44
45
xAOD::TrackCaloClusterContainer
newInt;
46
for
(
size_t
i = 0; i < newObj->
size
(); ++i ) {
47
newInt.
push_back
(
new
xAOD::TrackCaloCluster
() );
48
}
49
newInt.setStore( newObj );
50
51
return
;
52
}
53
57
void
xAODTrackCaloClusterAuxContainerCnv_v1::transToPers
(
const
xAOD::TrackCaloClusterAuxContainer
*,
58
xAOD::TrackCaloClusterAuxContainer_v1
*,
59
MsgStream& log )
const
{
60
61
log << MSG::ERROR
62
<<
"Somebody called xAODTrackCaloClusterAuxContainerCnv_v1::transToPers"
63
<<
endmsg
;
64
throw
std::runtime_error(
"Somebody called xAODTrackCaloClusterAuxContainerCnv_v1::"
65
"transToPers"
);
66
return
;
67
}
endmsg
#define endmsg
Definition
AnalysisConfig_Ntuple.cxx:54
TrackCaloClusterContainer.h
TrackCaloClusterContainer_v1.h
DataVector::push_back
value_type push_back(value_type pElem)
Add an element to the end of the collection.
xAODTrackCaloClusterAuxContainerCnv_v1::transToPers
virtual void transToPers(const xAOD::TrackCaloClusterAuxContainer *, xAOD::TrackCaloClusterAuxContainer_v1 *, MsgStream &log) const override
Dummy function inherited from the base class.
Definition
xAODTrackCaloClusterAuxContainerCnv_v1.cxx:57
xAODTrackCaloClusterAuxContainerCnv_v1::persToTrans
virtual void persToTrans(const xAOD::TrackCaloClusterAuxContainer_v1 *oldObj, xAOD::TrackCaloClusterAuxContainer *newObj, MsgStream &log) const override
Function converting from the old type to the current one.
Definition
xAODTrackCaloClusterAuxContainerCnv_v1.cxx:25
xAODTrackCaloClusterAuxContainerCnv_v1::xAODTrackCaloClusterAuxContainerCnv_v1
xAODTrackCaloClusterAuxContainerCnv_v1()
Default constructor.
Definition
xAODTrackCaloClusterAuxContainerCnv_v1.cxx:20
xAOD::AuxContainerBase::resize
virtual bool resize(size_t size) override
Resize the arrays to a given size.
Definition
AuxContainerBase.cxx:530
xAOD::AuxContainerBase::size
virtual size_t size() const override
Get the size of the container.
Definition
AuxContainerBase.cxx:455
xAOD::TrackCaloClusterAuxContainer_v1
This class is meant to implement the TrackCaloCluster EDM.
Definition
TrackCaloClusterAuxContainer_v1.h:28
xAOD::TrackCaloCluster_v1
Class describing a TrackCaloCluster.
Definition
TrackCaloCluster_v1.h:25
copyAuxStoreThinned.h
Helper to copy an aux store while applying thinning.
SG::copyAuxStoreThinned
void copyAuxStoreThinned(const SG::IConstAuxStore &orig, SG::IAuxStore ©, const SG::ThinningInfo *info)
Helper to copy an aux store while applying thinning.
xAOD::TrackCaloClusterContainer
TrackCaloClusterContainer_v1 TrackCaloClusterContainer
Definition of the current "TrackCaloCluster container version".
Definition
TrackCaloClusterContainer.h:13
xAOD::TrackCaloCluster
TrackCaloCluster_v1 TrackCaloCluster
Reference the current persistent version:
Definition
TrackCaloCluster.h:12
xAOD::TrackCaloClusterAuxContainer
TrackCaloClusterAuxContainer_v1 TrackCaloClusterAuxContainer
Definition of the current TrackCaloCluster auxiliary container.
Definition
TrackCaloClusterAuxContainer.h:18
xAOD::TrackCaloClusterContainer_v1
DataVector< xAOD::TrackCaloCluster_v1 > TrackCaloClusterContainer_v1
The container is a simple typedef for now.
Definition
TrackCaloClusterContainer_v1.h:21
xAODTrackCaloClusterAuxContainerCnv_v1.h
Generated on
for ATLAS Offline Software by
1.17.0