ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Control
DataModelAthenaPool
DataModelAthenaPool
Navigable_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 DATAMODELATHENAPOOL_NAVIGABLE_P1_H
6
#define DATAMODELATHENAPOOL_NAVIGABLE_P1_H
7
12
13
#include "
ElementLinkVector_p1.h
"
14
//#include "Navigable/NavigableDefaults.h"
15
19
20
template
<
typename
INDEXTYPE,
typename
RPAR=
void
>
21
class
Navigable_p1
22
{
23
public
:
24
Navigable_p1
() {}
25
26
ElementLinkVector_p1< INDEXTYPE >
m_links
;
27
std::vector<RPAR>
m_parameters
;
28
};
29
30
31
template
<
typename
INDEXTYPE>
32
class
Navigable_p1
<INDEXTYPE, void>
33
{
34
public
:
35
Navigable_p1
() {}
36
37
ElementLinkVector_p1< INDEXTYPE >
m_links
;
38
};
39
40
41
42
// Helper template to generate type of the persistent Navigable_pN
43
// from the type of the transient Navigable
44
// Used in the NavigableCnv_pN
45
46
namespace
NavigationDefaults
{
47
struct
DefaultWeight
;
48
}
49
50
51
template
<
class
NAV,
typename
RPAR =
typename
NAV::parameter_type >
52
struct
GeneratePersNavigableType
53
{
54
typedef
Navigable_p1
<
55
typename
GenerateELinkIndexType_p1<typename NAV::external_index_type>::type
,
56
RPAR >
type
;
57
};
58
59
60
template
<
class
NAV >
61
struct
GeneratePersNavigableType
<NAV,
NavigationDefaults
::DefaultWeight >
62
{
63
typedef
Navigable_p1
<
64
typename
GenerateELinkIndexType_p1<typename NAV::external_index_type>::type
65
>
type
;
66
};
67
68
69
70
// If you define more Navigable_pN types, remember to add template instantiations to the Dict file
71
72
typedef
Navigable_p1<uint32_t>
NavigableInt_p1
;
73
typedef
Navigable_p1<std::string>
NavigableStr_p1
;
74
75
76
#endif
77
78
79
ElementLinkVector_p1.h
This file contains the class definition for the ElementLinkVector_p1 class.
NavigableInt_p1
Navigable_p1< uint32_t > NavigableInt_p1
Definition
Navigable_p1.h:72
NavigableStr_p1
Navigable_p1< std::string > NavigableStr_p1
Definition
Navigable_p1.h:73
ElementLinkVector_p1
Definition
ElementLinkVector_p1.h:23
Navigable_p1< INDEXTYPE, void >::m_links
ElementLinkVector_p1< INDEXTYPE > m_links
Definition
Navigable_p1.h:37
Navigable_p1< INDEXTYPE, void >::Navigable_p1
Navigable_p1()
Definition
Navigable_p1.h:35
Navigable_p1
Definition
Navigable_p1.h:22
Navigable_p1< unsigned int, float >::m_links
ElementLinkVector_p1< unsigned int > m_links
Definition
Navigable_p1.h:26
Navigable_p1< unsigned int, float >::m_parameters
std::vector< float > m_parameters
Definition
Navigable_p1.h:27
Navigable_p1::Navigable_p1
Navigable_p1()
Definition
Navigable_p1.h:24
NavigationDefaults
Definition
Navigable_p1.h:46
GenerateELinkIndexType_p1
Definition
ElementLink_p1.h:44
GeneratePersNavigableType< NAV, NavigationDefaults::DefaultWeight >::type
Navigable_p1< typename GenerateELinkIndexType_p1< typename NAV::external_index_type >::type > type
Definition
Navigable_p1.h:65
GeneratePersNavigableType
Definition
Navigable_p1.h:53
GeneratePersNavigableType::type
Navigable_p1< typename GenerateELinkIndexType_p1< typename NAV::external_index_type >::type, RPAR > type
Definition
Navigable_p1.h:56
NavigationDefaults::DefaultWeight
Definition
NavigationDefaults.h:52
Generated on
for ATLAS Offline Software by
1.17.0