ATLAS Offline Software
ElementLink_p3.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 #ifndef DATAMODELATHENAPOOL_ELEMENTLINK_P3_H
6 #define DATAMODELATHENAPOOL_ELEMENTLINK_P3_H
7 
13 #include <string>
14 #include <inttypes.h>
15 
16 #include "CxxUtils/sgkey_t.h"
17 
22 template <class INDEXTYPE>
24 public:
25 
26  ElementLink_p3() = default;
27 
28  INDEXTYPE m_elementIndex{};
30 };
31 
32 
33 // If you define more ElementLink_pN types, remember to add template instantiations to the Dict file
34 
37 
38 
39 // Helper template for conversion from the index type in transient ElementLink
40 // to the persistent index type
41 
42 template <typename ContIndxType>
44 // typedef MISSING_DEFINITION_OF_GenerateELinkIndexType_FOR_<ContIndxType> type;
45 };
46 
47 template<>
49  typedef uint32_t type;
50 };
51 
52 template<>
54  typedef uint32_t type;
55 };
56 
57 template<>
59  typedef uint32_t type;
60 };
61 
62 #ifdef __APPLE__
63 template<>
64 struct GenerateELinkIndexType_p3<size_t> {
65  typedef uint32_t type;
66 };
67 #endif
68 
69 template<>
70 struct GenerateELinkIndexType_p3<std::string> {
71  typedef std::string type;
72 };
73 
74 
75 // Helper template to generate type of the persistent ElementLink_pN
76 // from the type of the transient ElementLink
77 // Used in the ElementlinkCnv_pN
78 
79 template <class LINK>
82 };
83 
84 #endif // DATAMODELATHENAPOOL_ELEMENTLINK_P3_H
85 
86 
87 
CaloCellPos2Ntuple.int
int
Definition: CaloCellPos2Ntuple.py:24
xAOD::uint32_t
setEventNumber uint32_t
Definition: EventInfo_v1.cxx:127
GenerateELinkIndexType_p3< int >::type
uint32_t type
Definition: ElementLink_p3.h:59
GenerateELinkIndexType_p3< uint64_t >::type
uint32_t type
Definition: ElementLink_p3.h:54
xAOD::uint64_t
uint64_t
Definition: EventInfo_v1.cxx:123
GenerateELinkIndexType_p3< uint32_t >::type
uint32_t type
Definition: ElementLink_p3.h:49
SG::sgkey_t
uint32_t sgkey_t
Type used for hashed StoreGate key+CLID pairs.
Definition: CxxUtils/CxxUtils/sgkey_t.h:32
GenerateELinkIndexType_p3< std::string >::type
std::string type
Definition: ElementLink_p3.h:71
sgkey_t.h
Define the type used for hashed StoreGate key+CLID pairs.
GeneratePersELinkType_p3::type
ElementLink_p3< typename GenerateELinkIndexType_p3< typename LINK::index_type >::type > type
Definition: ElementLink_p3.h:81
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
GenerateELinkIndexType_p3
Definition: ElementLink_p3.h:43
GeneratePersELinkType_p3
Definition: ElementLink_p3.h:80