Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
Main Page
Related Pages
Modules
Namespaces
Namespace List
Namespace Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Enumerations
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
z
Enumerator
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Classes
Class List
Class Index
Class Hierarchy
Class Members
All
:
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Enumerations
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Enumerator
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Properties
Related Functions
:
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
r
s
t
v
w
x
z
Files
File List
File Members
All
$
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
_
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Variables
$
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Enumerations
a
b
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
v
x
z
Enumerator
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Macros
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
GitLab
LXR
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Modules
Pages
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
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
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
StraightLineSurface.h
PerigeeSurface.h
Surface.h
CylinderSurfaceCnv_p2
Definition:
SurfaceCnv_p2.h:52
Trk::Surface_p2
Definition:
Surface_p2.h:20
SurfaceCnv_p2::transToPers
void transToPers(const SURFACE *, Trk::Surface_p2 *, MsgStream &)
Definition:
SurfaceCnv_p2.cxx:52
PerigeeSurfaceCnv_p2
Definition:
SurfaceCnv_p2.h:56
StraightLineSurfaceCnv_p2
Definition:
SurfaceCnv_p2.h:60
SurfaceCnv_p2::SurfaceCnv_p2
SurfaceCnv_p2()
Definition:
SurfaceCnv_p2.h:35
IEventCnvSuperTool.h
TPPolyCnvBase
Definition:
TPConverter.h:674
ConeSurface.h
PlaneSurfaceCnv_p2
Definition:
SurfaceCnv_p2.h:58
T_AthenaPoolTPConverter.h
CylinderSurface.h
Surface_p2.h
SurfaceCnv_p2::setCnvToolName
void setCnvToolName(const std::string &name)
Definition:
SurfaceCnv_p2.h:42
ConeSurfaceCnv_p2
Definition:
SurfaceCnv_p2.h:50
DiscSurfaceCnv_p2
Definition:
SurfaceCnv_p2.h:54
name
std::string name
Definition:
Control/AthContainers/Root/debug.cxx:240
SurfaceCnv_p2
Definition:
SurfaceCnv_p2.h:33
SaggedLineSurface.h
PlaneSurface.h
python.CaloCondTools.log
log
Definition:
CaloCondTools.py:20
DiscSurface.h
Trk::SaggedLineSurface
Definition:
SaggedLineSurface.h:33
SurfaceCnv_p2::persToTrans
void persToTrans(const Trk::Surface_p2 *, SURFACE *, MsgStream &)
Definition:
SurfaceCnv_p2.cxx:45
SaggedLineSurfaceCnv_p2
Definition:
SurfaceCnv_p2.h:66
Generated on Sun Apr 20 2025 21:19:22 for ATLAS Offline Software by
1.8.18