ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Event
xAOD
xAODMuonAthenaPool
src
xAODMuonAuxContainerCnv_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 "
xAODMuonAuxContainerCnv_v1.h
"
16
#include "
xAODMuon/MuonContainer.h
"
17
#include "
xAODMuon/versions/MuonContainer_v1.h
"
18
19
20
xAODMuonAuxContainerCnv_v1::xAODMuonAuxContainerCnv_v1
()
21
{
22
}
23
24
void
xAODMuonAuxContainerCnv_v1::
25
persToTrans
(
const
xAOD::MuonAuxContainer_v1
* oldObj,
26
xAOD::MuonAuxContainer
* 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::MuonContainer_v1 oldInt;
40
// for( size_t i = 0; i < oldObj->size(); ++i ) {
41
// oldInt.push_back( new xAOD::Muon_v1() );
42
// }
43
// oldInt.setStore( oldObj );
44
//
45
// xAOD::MuonContainer newInt;
46
// for( size_t i = 0; i < newObj->size(); ++i ) {
47
// newInt.push_back( new xAOD::Muon() );
48
// }
49
// newInt.setStore( newObj );
50
//
51
// for( size_t i = 0; i < oldInt.size(); ++i ) {
52
// }
53
54
return
;
55
}
56
60
void
xAODMuonAuxContainerCnv_v1::
61
transToPers
(
const
xAOD::MuonAuxContainer
*,
62
xAOD::MuonAuxContainer_v1
*,
63
MsgStream& log )
const
{
64
65
log << MSG::ERROR
66
<<
"Somebody called xAODMuonAuxContainerCnv_v1::transToPers"
67
<<
endmsg
;
68
throw
std::runtime_error(
"Somebody called xAODMuonAuxContainerCnv_v1::"
69
"transToPers"
);
70
71
return
;
72
}
endmsg
#define endmsg
Definition
AnalysisConfig_Ntuple.cxx:54
MuonContainer.h
MuonContainer_v1.h
xAODMuonAuxContainerCnv_v1::persToTrans
virtual void persToTrans(const xAOD::MuonAuxContainer_v1 *oldObj, xAOD::MuonAuxContainer *newObj, MsgStream &log) const override
Function converting from the old type to the current one.
Definition
xAODMuonAuxContainerCnv_v1.cxx:25
xAODMuonAuxContainerCnv_v1::xAODMuonAuxContainerCnv_v1
xAODMuonAuxContainerCnv_v1()
Default constructor.
Definition
xAODMuonAuxContainerCnv_v1.cxx:20
xAODMuonAuxContainerCnv_v1::transToPers
virtual void transToPers(const xAOD::MuonAuxContainer *, xAOD::MuonAuxContainer_v1 *, MsgStream &log) const override
Dummy function inherited from the base class.
Definition
xAODMuonAuxContainerCnv_v1.cxx:61
xAOD::AuxContainerBase::resize
virtual bool resize(size_t size) override
Resize the arrays to a given size.
Definition
AuxContainerBase.cxx:530
xAOD::MuonAuxContainer_v1
Temporary container used until we have I/O for AuxStoreInternal.
Definition
MuonAuxContainer_v1.h:31
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::MuonAuxContainer
MuonAuxContainer_v5 MuonAuxContainer
Definition of the current Muon auxiliary container.
Definition
MuonAuxContainer.h:19
xAODMuonAuxContainerCnv_v1.h
Generated on
for ATLAS Offline Software by
1.17.0