ATLAS Offline Software
Tracking
TrkEventCnv
TrkEventTPCnv
TrkEventTPCnv
TrkDetElementSurface
DetElementSurfaceCnv_p1.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 TRK_DETELEMENTSURFACECNV_P1_H
6
#define TRK_DETELEMENTSURFACECNV_P1_H
7
8
//-----------------------------------------------------------------------------
9
//
10
// file: DetElementSurfaceCnv_p1.h
11
//
12
//-----------------------------------------------------------------------------
13
14
#include "
TrkEventTPCnv/TrkDetElementSurface/DetElementSurface_p1.h
"
15
#include "
TrkEventCnvTools/DetElementSurface.h
"
16
#include "
TrkSurfaces/Surface.h
"
17
#include "GaudiKernel/ToolHandle.h"
18
#include "
TrkEventCnvTools/IEventCnvSuperTool.h
"
// for some reason cant be forward declared (template business)
19
#include "
AthenaPoolCnvSvc/T_AthenaPoolTPConverter.h
"
20
21
class
MsgStream;
22
23
// #include "TrkSurfaces/StraightLineSurface.h"
24
// #include "TrkSurfaces/DiscSurface.h"
25
// #include "TrkSurfaces/PlaneSurface.h"
26
// #include "TrkSurfaces/CylinderSurface.h"
27
28
// template< class SURFACE >
29
// class DetElementSurfaceCnv_p1
30
// : public T_AthenaPoolTPAbstractPolyCnvBase< Trk::Surface, Trk::DetElementSurface<SURFACE>, Trk::DetElementSurface_p1 >
31
// {
32
// public:
33
// DetElementSurfaceCnv_p1() {}
34
// //Trk::DetElementSurface<SURFACE> * createTransient( const Trk::DetElementSurface_p1 *persObj, MsgStream & log );
35
// void persToTrans( const Trk::DetElementSurface_p1 *persObj, Trk::DetElementSurface<SURFACE> *transObj, MsgStream &log ) {}
36
// void transToPers( const Trk::DetElementSurface<SURFACE> *transObj, Trk::DetElementSurface_p1 *persObj, MsgStream &log );
37
// };
38
//
39
// class DetElementStraightLineSurfaceCnv_p1 : public DetElementSurfaceCnv_p1<Trk::StraightLineSurface> {};
40
// class DetElementDiscSurfaceCnv_p1 : public DetElementSurfaceCnv_p1<Trk::DiscSurface>();
41
// class DetElementPlaneSurfaceCnv_p1 : public DetElementSurfaceCnv_p1<Trk::PlaneSurface>();
42
// class DetElementCylinderSurfaceCnv_p1 : public DetElementSurfaceCnv_p1<Trk::CylinderSurface>();
43
44
class
DetElementSurfaceCnv_p1
45
:
public
T_AthenaPoolTPPolyCnvBase
< Trk::Surface, Trk::DetElementSurface, Trk::DetElementSurface_p1 >
46
{
47
public
:
48
DetElementSurfaceCnv_p1
() :
m_eventCnvTool
(
"Trk::EventCnvSuperTool/EventCnvSuperTool"
){}
49
virtual
Trk::DetElementSurface
*
createTransient
(
const
Trk::DetElementSurface_p1
*persObj, MsgStream &
log
);
// DO NOT USE
50
const
Trk::Surface
*
createSurface
( MsgStream &
log
);
// DO USE!!!
51
virtual
void
persToTrans
(
const
Trk::DetElementSurface_p1
*persObj,
Trk::DetElementSurface
*transObj, MsgStream &
log
);
52
virtual
void
transToPers
(
const
Trk::DetElementSurface
*transObj,
Trk::DetElementSurface_p1
*persObj, MsgStream &
log
);
53
//virtual Trk::Surface* virt_createTransFromPStore( unsigned index, MsgStream &log ){}
54
private
:
55
ToolHandle<Trk::IEventCnvSuperTool>
m_eventCnvTool
;
56
Identifier
m_id
;
57
};
58
59
60
#endif
DetElementSurfaceCnv_p1::createSurface
const Trk::Surface * createSurface(MsgStream &log)
Definition:
DetElementSurfaceCnv_p1.cxx:19
Surface.h
DetElementSurfaceCnv_p1::transToPers
virtual void transToPers(const Trk::DetElementSurface *transObj, Trk::DetElementSurface_p1 *persObj, MsgStream &log)
Definition:
DetElementSurfaceCnv_p1.cxx:35
Trk::DetElementSurface_p1
Definition:
DetElementSurface_p1.h:18
DetElementSurface_p1.h
IEventCnvSuperTool.h
TPPolyCnvBase
Definition:
TPConverter.h:674
DetElementSurfaceCnv_p1::persToTrans
virtual void persToTrans(const Trk::DetElementSurface_p1 *persObj, Trk::DetElementSurface *transObj, MsgStream &log)
Definition:
DetElementSurfaceCnv_p1.cxx:27
DetElementSurfaceCnv_p1::createTransient
virtual Trk::DetElementSurface * createTransient(const Trk::DetElementSurface_p1 *persObj, MsgStream &log)
Definition:
DetElementSurfaceCnv_p1.cxx:10
T_AthenaPoolTPConverter.h
Trk::DetElementSurface
Definition:
DetElementSurface.h:32
DetElementSurfaceCnv_p1::m_id
Identifier m_id
Used in a horrible hack, in createSurface()
Definition:
DetElementSurfaceCnv_p1.h:56
DetElementSurfaceCnv_p1
Definition:
DetElementSurfaceCnv_p1.h:46
python.CaloCondTools.log
log
Definition:
CaloCondTools.py:20
DetElementSurfaceCnv_p1::DetElementSurfaceCnv_p1
DetElementSurfaceCnv_p1()
Definition:
DetElementSurfaceCnv_p1.h:48
DetElementSurfaceCnv_p1::m_eventCnvTool
ToolHandle< Trk::IEventCnvSuperTool > m_eventCnvTool
Definition:
DetElementSurfaceCnv_p1.h:55
Trk::Surface
Definition:
Tracking/TrkDetDescr/TrkSurfaces/TrkSurfaces/Surface.h:75
DetElementSurface.h
Identifier
Definition:
IdentifierFieldParser.cxx:14
Generated on Sun Dec 22 2024 21:09:24 for ATLAS Offline Software by
1.8.18