ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Tracking
TrkEventCnv
TrkEventAthenaPool
src
TrackCollectionCnv.h
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: TrackCollectionCnv.h
8
// author: Lukasz Janyst <ljanyst@cern.ch>
9
//
10
//-----------------------------------------------------------------------------
11
12
#ifndef TRKEVENTATHENAPOOL_TRACKCOLLECTIONCNV_H
13
#define TRKEVENTATHENAPOOL_TRACKCOLLECTIONCNV_H
14
15
#include "GaudiKernel/MsgStream.h"
16
17
#include "
TrkEventCnvTools/ITrkEventCnvTool.h
"
18
#include "
AtlasDetDescr/AtlasDetectorID.h
"
19
20
#include "
AthenaPoolCnvSvc/T_AthenaPoolCustomCnv.h
"
21
#include "
AthenaPoolCnvSvc/AthenaPoolCnvTPExtension.h
"
22
23
#include "
TrkTrack/TrackCollection.h
"
24
25
#include "
TrkEventTPCnv/TrackCollectionCnv_tlp1.h
"
26
#include "
TrkEventTPCnv/TrackCollectionCnv_tlp2.h
"
27
#include "
TrkEventTPCnv/TrackCollectionCnv_tlp3.h
"
28
#include "
TrkEventTPCnv/TrackCollectionCnv_tlp4.h
"
29
#include "
TrkEventTPCnv/TrackCollectionCnv_tlp5.h
"
30
#include "
TrkEventTopLevelCnv/TrackCollectionCnv_tlp6.h
"
31
#include "
TrkEventTopLevelCnv/TrackCollectionCnv_tlp7.h
"
32
33
//-----------------------------------------------------------------------------
34
// Base class definition - defined which is the to-be-used persistent version
35
//-----------------------------------------------------------------------------
36
37
typedef
Trk::TrackCollection_tlp7
TrackCollection_PERS
;
38
39
typedef
T_AthenaPoolCustomCnvWithKey<TrackCollection, TrackCollection_PERS>
TrackCollectionCnvBase
;
40
41
//-----------------------------------------------------------------------------
42
// Converter for TrackCollection object
43
//-----------------------------------------------------------------------------
44
class
TrackCollectionCnv
45
:
public
TrackCollectionCnvBase
,
46
public
AthenaPoolCnvTPExtension
47
{
48
friend
class
CnvFactory
<
TrackCollectionCnv
>;
49
50
public
:
51
TrackCollectionCnv
( ISvcLocator *svcloc );
52
53
protected
:
54
virtual
StatusCode
initialize
()
override
;
55
56
virtual
TrackCollection_PERS
*
createPersistentWithKey
(
TrackCollection
*transCont,
57
const
std::string& key)
override
;
58
virtual
TrackCollection
*
createTransientWithKey
(
const
Token
* token,
59
const
std::string& key)
override
;
60
61
virtual
TopLevelTPCnvBase
*
getTopLevelTPCnv
()
override
{
return
&
m_TPConverter
; }
62
63
64
private
:
65
void
initializeOldExtConverters
();
66
67
IMessageSvc*
m_msgSvc
;
68
MsgStream
m_log
;
69
bool
m_oldExtCnvInitialized
=
false
;
70
71
TrackCollectionCnv_tlp1
m_TPConverter_tlp1
;
72
TrackCollectionCnv_tlp2
m_TPConverter_tlp2
;
73
TrackCollectionCnv_tlp3
m_TPConverter_tlp3
;
74
TrackCollectionCnv_tlp4
m_TPConverter_tlp4
;
75
TrackCollectionCnv_tlp5
m_TPConverter_tlp5
;
76
TrackCollectionCnv_tlp6
m_TPConverter_tlp6
;
77
TrackCollectionCnv_tlp7
m_TPConverter
;
// <- the current one
78
};
79
80
#endif
// TRKEVENTATHENAPOOL_TRACKCOLLECTIONCNV_H
AthenaPoolCnvTPExtension.h
AtlasDetectorID.h
This class provides an interface to generate or decode an identifier for the upper levels of the dete...
ITrkEventCnvTool.h
T_AthenaPoolCustomCnv.h
his file contains the class definition for the templated T_AthenaPoolCustomCnv class.
TrackCollectionCnvBase
T_AthenaPoolCustomCnvWithKey< TrackCollection, TrackCollection_PERS > TrackCollectionCnvBase
Definition
TrackCollectionCnv.h:39
TrackCollection_PERS
Trk::TrackCollection_tlp7 TrackCollection_PERS
Definition
TrackCollectionCnv.h:37
TrackCollectionCnv_tlp1.h
TrackCollectionCnv_tlp2.h
TrackCollectionCnv_tlp3.h
TrackCollectionCnv_tlp4.h
TrackCollectionCnv_tlp5.h
TrackCollectionCnv_tlp6.h
TrackCollectionCnv_tlp7.h
TrackCollection.h
TrackCollection
DataVector< Trk::Track > TrackCollection
This typedef represents a collection of Trk::Track objects.
Definition
TrackCollection.h:19
AthenaPoolCnvTPExtension::AthenaPoolCnvTPExtension
AthenaPoolCnvTPExtension()
Definition
AthenaPoolCnvTPExtension.h:17
CnvFactory
Abstract factory to create the converter.
Definition
ToyConverter.h:16
T_AthenaPoolCustomCnvWithKey< TrackCollection, TrackCollection_PERS >::T_AthenaPoolCustomCnvWithKey
T_AthenaPoolCustomCnvWithKey(ISvcLocator *pSvcLocator, const char *name=nullptr)
Token
This class provides a token that identifies in a unique way objects on the persistent storage.
Definition
Token.h:22
TopLevelTPCnvBase
Base class for top-level TP converters.
Definition
TopLevelTPCnvBase.h:32
TrackCollectionCnv_tlp1
Definition
TrackCollectionCnv_tlp1.h:54
TrackCollectionCnv_tlp2
Definition
TrackCollectionCnv_tlp2.h:58
TrackCollectionCnv_tlp3
Definition
TrackCollectionCnv_tlp3.h:61
TrackCollectionCnv_tlp4
Definition
TrackCollectionCnv_tlp4.h:57
TrackCollectionCnv_tlp5
Definition
TrackCollectionCnv_tlp5.h:40
TrackCollectionCnv_tlp6
Definition
TrackCollectionCnv_tlp6.h:43
TrackCollectionCnv_tlp7
Definition
TrackCollectionCnv_tlp7.h:52
TrackCollectionCnv::m_TPConverter_tlp3
TrackCollectionCnv_tlp3 m_TPConverter_tlp3
Definition
TrackCollectionCnv.h:73
TrackCollectionCnv::initializeOldExtConverters
void initializeOldExtConverters()
setup old extended converters when reading old data
Definition
TrackCollectionCnv.cxx:42
TrackCollectionCnv::m_TPConverter_tlp2
TrackCollectionCnv_tlp2 m_TPConverter_tlp2
Definition
TrackCollectionCnv.h:72
TrackCollectionCnv::createTransientWithKey
virtual TrackCollection * createTransientWithKey(const Token *token, const std::string &key) override
method to be implemented by the developer.
Definition
TrackCollectionCnv.cxx:89
TrackCollectionCnv::m_TPConverter
TrackCollectionCnv_tlp7 m_TPConverter
Definition
TrackCollectionCnv.h:77
TrackCollectionCnv::TrackCollectionCnv
TrackCollectionCnv(ISvcLocator *svcloc)
Definition
TrackCollectionCnv.cxx:25
TrackCollectionCnv::m_TPConverter_tlp4
TrackCollectionCnv_tlp4 m_TPConverter_tlp4
Definition
TrackCollectionCnv.h:74
TrackCollectionCnv::createPersistentWithKey
virtual TrackCollection_PERS * createPersistentWithKey(TrackCollection *transCont, const std::string &key) override
method to be implemented by the developer.
Definition
TrackCollectionCnv.cxx:77
TrackCollectionCnv::m_TPConverter_tlp1
TrackCollectionCnv_tlp1 m_TPConverter_tlp1
Definition
TrackCollectionCnv.h:71
TrackCollectionCnv::initialize
virtual StatusCode initialize() override
Gaudi Service Interface method implementations:
Definition
TrackCollectionCnv.cxx:35
TrackCollectionCnv::m_TPConverter_tlp6
TrackCollectionCnv_tlp6 m_TPConverter_tlp6
Definition
TrackCollectionCnv.h:76
TrackCollectionCnv::getTopLevelTPCnv
virtual TopLevelTPCnvBase * getTopLevelTPCnv() override
returns the main top-level TP converter
Definition
TrackCollectionCnv.h:61
TrackCollectionCnv::m_log
MsgStream m_log
Definition
TrackCollectionCnv.h:68
TrackCollectionCnv::m_oldExtCnvInitialized
bool m_oldExtCnvInitialized
Definition
TrackCollectionCnv.h:69
TrackCollectionCnv::m_TPConverter_tlp5
TrackCollectionCnv_tlp5 m_TPConverter_tlp5
Definition
TrackCollectionCnv.h:75
TrackCollectionCnv::m_msgSvc
IMessageSvc * m_msgSvc
Definition
TrackCollectionCnv.h:67
Trk::TrackCollection_tlp7
Definition
TrackCollection_tlp7.h:74
Generated on
for ATLAS Offline Software by
1.17.0