ATLAS Offline Software
Tracking
TrkEventCnv
TrkEventTPCnv
TrkEventTPCnv
TrkSurfaces
SurfaceCnv_p2.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2017 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
class
SaggedLineSurfaceCnv_p2
62
:
public
SurfaceCnv_p2
< Trk::SaggedLineSurface> {};
63
64
65
#endif // SURFACE_CNV_p2_H
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:228
SurfaceCnv_p2
Definition:
SurfaceCnv_p2.h:33
SaggedLineSurface.h
PlaneSurface.h
python.CaloCondTools.log
log
Definition:
CaloCondTools.py:20
DiscSurface.h
SurfaceCnv_p2::persToTrans
void persToTrans(const Trk::Surface_p2 *, SURFACE *, MsgStream &)
Definition:
SurfaceCnv_p2.cxx:45
SaggedLineSurfaceCnv_p2
Definition:
SurfaceCnv_p2.h:62
Generated on Sun Dec 22 2024 21:18:40 for ATLAS Offline Software by
1.8.18