ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Tracking
TrkEventCnv
TrkEventTPCnv
TrkEventTPCnv
TrkSurfaces
SurfaceCnv_p2.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef SURFACE_CNV_P2_H
6
#define SURFACE_CNV_P2_H
7
8
//-----------------------------------------------------------------------------
9
//
10
// file: SurfaceCnv_p2.h
11
//
12
//-----------------------------------------------------------------------------
13
14
#include "
AthenaPoolCnvSvc/T_AthenaPoolTPConverter.h
"
15
#include "GaudiKernel/ToolHandle.h"
16
#include "
TrkEventCnvTools/IEventCnvSuperTool.h
"
17
18
#include "
TrkSurfaces/Surface.h
"
19
#include "
TrkSurfaces/PlaneSurface.h
"
20
#include "
TrkSurfaces/DiscSurface.h
"
21
#include "
TrkSurfaces/ConeSurface.h
"
22
#include "
TrkSurfaces/CylinderSurface.h
"
23
#include "
TrkSurfaces/PerigeeSurface.h
"
24
#include "
TrkSurfaces/StraightLineSurface.h
"
25
#include "
TrkDistortedSurfaces/SaggedLineSurface.h
"
26
#include "
TrkEventTPCnv/TrkSurfaces/Surface_p2.h
"
27
28
class
MsgStream;
29
30
template
<
class
SURFACE >
31
class
SurfaceCnv_p2
32
:
public
T_AthenaPoolTPPolyCnvBase
<Trk::Surface, SURFACE, Trk::Surface_p2>
33
{
34
public
:
35
SurfaceCnv_p2
() :
m_eventCnvTool
(
"Trk::EventCnvSuperTool/EventCnvSuperTool"
){}
36
37
void
persToTrans
(
const
Trk::Surface_p2
*, SURFACE*, MsgStream& );
38
void
transToPers
(
const
SURFACE*,
Trk::Surface_p2
*, MsgStream& );
39
40
SURFACE*
createTransient
(
const
Trk::Surface_p2
* persObj, MsgStream& log);
41
42
void
setCnvToolName
(
const
std::string& name)
43
{
m_eventCnvTool
.setTypeAndName(name); }
44
45
private
:
46
ToolHandle<Trk::IEventCnvSuperTool>
m_eventCnvTool
;
47
};
48
49
class
ConeSurfaceCnv_p2
50
:
public
SurfaceCnv_p2
< Trk::ConeSurface> {};
51
class
CylinderSurfaceCnv_p2
52
:
public
SurfaceCnv_p2
< Trk::CylinderSurface> {};
53
class
DiscSurfaceCnv_p2
54
:
public
SurfaceCnv_p2
< Trk::DiscSurface> {};
55
class
PerigeeSurfaceCnv_p2
56
:
public
SurfaceCnv_p2
< Trk::PerigeeSurface> {};
57
class
PlaneSurfaceCnv_p2
58
:
public
SurfaceCnv_p2
< Trk::PlaneSurface> {};
59
class
StraightLineSurfaceCnv_p2
60
:
public
SurfaceCnv_p2
< Trk::StraightLineSurface> {};
61
62
// Special case for SaggedLineSurface: the detector elements we get back
63
// are now StraightLineSurface's.
64
class
SaggedLineSurfaceCnv_p2
65
:
public
SurfaceCnv_p2
< Trk::StraightLineSurface>
66
{
67
public
:
68
virtual
const
std::type_info&
transientTInfo
()
const override
69
{
return
typeid
(
Trk::SaggedLineSurface
); }
70
};
71
72
73
74
75
#endif
// SURFACE_CNV_p2_H
ConeSurface.h
CylinderSurface.h
DiscSurface.h
IEventCnvSuperTool.h
PerigeeSurface.h
PlaneSurface.h
SaggedLineSurface.h
StraightLineSurface.h
Surface.h
Surface_p2.h
T_AthenaPoolTPConverter.h
T_AthenaPoolTPPolyCnvBase
TPPolyCnvBase< TRANS_BASE, TRANS, PERS > T_AthenaPoolTPPolyCnvBase
Definition
T_AthenaPoolTPConverter.h:38
ConeSurfaceCnv_p2
Definition
SurfaceCnv_p2.h:50
CylinderSurfaceCnv_p2
Definition
SurfaceCnv_p2.h:52
DiscSurfaceCnv_p2
Definition
SurfaceCnv_p2.h:54
PerigeeSurfaceCnv_p2
Definition
SurfaceCnv_p2.h:56
PlaneSurfaceCnv_p2
Definition
SurfaceCnv_p2.h:58
SaggedLineSurfaceCnv_p2
Definition
SurfaceCnv_p2.h:66
SaggedLineSurfaceCnv_p2::transientTInfo
virtual const std::type_info & transientTInfo() const override
return C++ type id of the transient class this converter is for
Definition
SurfaceCnv_p2.h:68
StraightLineSurfaceCnv_p2
Definition
SurfaceCnv_p2.h:60
SurfaceCnv_p2::SurfaceCnv_p2
SurfaceCnv_p2()
Definition
SurfaceCnv_p2.h:35
SurfaceCnv_p2::setCnvToolName
void setCnvToolName(const std::string &name)
Definition
SurfaceCnv_p2.h:42
SurfaceCnv_p2::transToPers
void transToPers(const SURFACE *, Trk::Surface_p2 *, MsgStream &)
Definition
SurfaceCnv_p2.cxx:52
SurfaceCnv_p2::persToTrans
void persToTrans(const Trk::Surface_p2 *, SURFACE *, MsgStream &)
Definition
SurfaceCnv_p2.cxx:45
SurfaceCnv_p2::m_eventCnvTool
ToolHandle< Trk::IEventCnvSuperTool > m_eventCnvTool
Definition
SurfaceCnv_p2.h:46
SurfaceCnv_p2::createTransient
SURFACE * createTransient(const Trk::Surface_p2 *persObj, MsgStream &log)
Definition
SurfaceCnv_p2.cxx:23
Trk::SaggedLineSurface
The distorted surface itself is the nominal surface.
Definition
SaggedLineSurface.h:33
Trk::Surface_p2
Definition
Surface_p2.h:22
Generated on
for ATLAS Offline Software by
1.17.0