ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
MuonSpectrometer
MuonCnv
MuonEventTPCnv
src
MuonCompetingRIOsOnTrack
CompetingMuonClustersOnTrackCnv_p1.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
//-----------------------------------------------------------------------------
6
//
7
// file: MuonCompetingRIOsOnTrackCnv_p1.cxx
8
//
9
//-----------------------------------------------------------------------------
10
11
#include "
MuonCompetingRIOsOnTrack/CompetingMuonClustersOnTrack.h
"
12
#include "
MuonEventTPCnv/MuonCompetingRIOsOnTrack/CompetingMuonClustersOnTrackCnv_p1.h
"
13
#include "
MuonRIO_OnTrack/MuonClusterOnTrack.h
"
14
#include "
TrkMeasurementBase/MeasurementBase.h
"
15
#include "
TrkRIO_OnTrack/RIO_OnTrack.h
"
16
17
void
18
CompetingMuonClustersOnTrackCnv_p1::persToTrans
(
const
Muon::CompetingMuonClustersOnTrack_p1
*persObj,
19
Muon::CompetingMuonClustersOnTrack
*transObj,
20
MsgStream &log )
21
{
22
std::vector<std::unique_ptr<const Muon::MuonClusterOnTrack>> containedChildRots{};
23
24
for
(
const
TPObjRef
&
ref
: persObj->
m_containedChildRots
) {
25
ITPConverterFor<Trk::MeasurementBase>
*rotCnv =
nullptr
;
26
const
Muon::MuonClusterOnTrack
* mcot =
dynamic_cast<
const
Muon::MuonClusterOnTrack
*
>
(
createTransFromPStore
(&rotCnv,
ref
, log));
27
containedChildRots.emplace_back(mcot);
28
}
29
30
ITPConverterFor<Trk::Surface>
*surfaceCnv =
nullptr
;
31
Trk::Surface
* associatedSurface =
createTransFromPStore
(&surfaceCnv, persObj->
m_associatedSurface
, log);
32
33
*transObj =
Muon::CompetingMuonClustersOnTrack
(
Trk::LocalParameters
(),
34
Amg::MatrixX
(),
35
associatedSurface,
36
std::move(containedChildRots),
37
{}
// assgnProb
38
);
39
40
fillTransFromPStore
( &
m_cRotCnv
, persObj->
m_competingROT
, transObj, log );
41
}
42
43
void
44
CompetingMuonClustersOnTrackCnv_p1::transToPers
(
const
Muon::CompetingMuonClustersOnTrack
*
/*transObj*/
,
45
Muon::CompetingMuonClustersOnTrack_p1
*
/*persObj*/
,
46
MsgStream &
/*log*/
)
47
{
48
throw
std::runtime_error(
"CompetingMuonClustersOnTrackCnv_p1::transToPers is deprecated!"
);
49
}
50
51
ref
const std::regex ref(r_ef)
CompetingMuonClustersOnTrackCnv_p1.h
CompetingMuonClustersOnTrack.h
MeasurementBase.h
MuonClusterOnTrack.h
RIO_OnTrack.h
CompetingMuonClustersOnTrackCnv_p1::m_cRotCnv
CompetingRIOsOnTrackCnv_p1 * m_cRotCnv
Definition
CompetingMuonClustersOnTrackCnv_p1.h:40
CompetingMuonClustersOnTrackCnv_p1::transToPers
virtual void transToPers(const Muon::CompetingMuonClustersOnTrack *transObj, Muon::CompetingMuonClustersOnTrack_p1 *persObj, MsgStream &log)
Definition
CompetingMuonClustersOnTrackCnv_p1.cxx:44
CompetingMuonClustersOnTrackCnv_p1::persToTrans
virtual void persToTrans(const Muon::CompetingMuonClustersOnTrack_p1 *persObj, Muon::CompetingMuonClustersOnTrack *transObj, MsgStream &log)
Definition
CompetingMuonClustersOnTrackCnv_p1.cxx:18
ITPConverterFor< TRANS_BASE >::createTransFromPStore
CNV::Trans_t * createTransFromPStore(CNV **cnv, const TPObjRef &ref, MsgStream &log) const
Definition
TPConverter.h:172
ITPConverterFor< TRANS_BASE >::fillTransFromPStore
void fillTransFromPStore(CNV **cnv, const TPObjRef &ref, TRANS_T *trans, MsgStream &log) const
Definition
TPConverter.h:145
ITPConverterFor< TRANS_BASE >::ITPConverterFor
ITPConverterFor()
Definition
TPConverter.h:43
Muon::CompetingMuonClustersOnTrack_p1
Version 1 of the persistent class representing the transient class Muon::MuonClusterOnTrack.
Definition
CompetingMuonClustersOnTrack_p1.h:20
Muon::CompetingMuonClustersOnTrack_p1::m_containedChildRots
std::vector< TPObjRef > m_containedChildRots
Definition
CompetingMuonClustersOnTrack_p1.h:27
Muon::CompetingMuonClustersOnTrack_p1::m_competingROT
TPObjRef m_competingROT
link to base MuonClusterOnTrack_p1, inheriting from RIO_OnTrack_p1
Definition
CompetingMuonClustersOnTrack_p1.h:25
Muon::CompetingMuonClustersOnTrack_p1::m_associatedSurface
TPObjRef m_associatedSurface
Definition
CompetingMuonClustersOnTrack_p1.h:28
Muon::CompetingMuonClustersOnTrack
Class for competing MuonClusters, it extends the Trk::CompetingRIOsOnTrack base class.
Definition
CompetingMuonClustersOnTrack.h:54
Muon::MuonClusterOnTrack
Base class for Muon cluster RIO_OnTracks.
Definition
MuonClusterOnTrack.h:34
TPObjRef
This class is an object reference used in Athena persistent data model.
Definition
TPObjRef.h:20
Trk::LocalParameters
Definition
LocalParameters.h:100
Trk::Surface
Abstract Base Class for tracking surfaces.
Definition
Surface.h:79
Amg::MatrixX
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > MatrixX
Dynamic Matrix - dynamic allocation.
Definition
EventPrimitives.h:27
Generated on
for ATLAS Offline Software by
1.17.0