ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Event
xAOD
xAODCore
xAODCore
tools
JaggedVecPersVector.h
Go to the documentation of this file.
1
// This file's extension implies that it's C, but it's really -*- C++ -*-.
2
/*
3
* Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration.
4
*/
15
16
17
#ifndef XAODCORE_JAGGEDVECPERSVECTOR_H
18
#define XAODCORE_JAGGEDVECPERSVECTOR_H
19
20
#include "
xAODCore/tools/AuxPersVector.h
"
21
#include "
AthContainers/JaggedVec.h
"
22
23
24
namespace
xAOD
{
25
26
template
<
class
T,
class
VEC >
27
class
AuxPersVector
<
SG
::JaggedVecElt<T>, VEC>
28
:
public
SG::JaggedVecVectorHolder
<T, typename VEC::allocator_type> {
29
30
public
:
32
typedef
VEC&
vector_type
;
33
35
AuxPersVector
(
SG::auxid_t
auxid
,
vector_type
vec
, [[maybe_unused]]
bool
isLinked
,
SG::IAuxStore
* store )
36
:
SG
::
JaggedVecVectorHolder
<T, typename VEC::allocator_type>
37
(
auxid
, &
vec
, store->
linkedVector
(
auxid
), false)
38
{
39
assert( !
isLinked
);
40
}
41
42
virtual
std::unique_ptr<SG::IAuxTypeVector>
clone
()
const override
{
43
return
std::make_unique<AuxPersVector>(*
this
);
44
}
45
};
// class AuxPersVector
46
47
48
}
// namespace xAOD
49
50
51
#endif
// not XAODCORE_JAGGEDVECPERSVECTOR_H
AuxPersVector.h
JaggedVec.h
xAOD::AuxPersVector< SG::JaggedVecElt< T >, VEC >::vec
vector_type & vec()
SG::IAuxStore
Interface for non-const operations on an auxiliary store.
Definition
IAuxStore.h:51
xAOD::AuxPersVector< SG::JaggedVecElt< T >, VEC >::isLinked
bool isLinked() const
Definition
IAuxTypeVector.h:238
xAOD::AuxPersVector< SG::JaggedVecElt< T >, VEC >::auxid
auxid_t auxid() const
Definition
IAuxTypeVector.h:244
xAOD::AuxPersVector< SG::JaggedVecElt< T >, VEC >::linkedVector
virtual std::unique_ptr< IAuxTypeVector > linkedVector()
Definition
IAuxTypeVector.h:229
SG::JaggedVecVectorHolder
Implementation of IAuxTypeVector for JaggedVec types.
Definition
JaggedVecVector.h:42
SG::JaggedVecVectorHolder< T, VEC::allocator_type >::JaggedVecVectorHolder
JaggedVecVectorHolder(auxid_t auxid, vector_type *vecPtr, IAuxTypeVector *linkedVec, bool ownFlag)
xAOD::AuxPersVector< SG::JaggedVecElt< T >, VEC >::vector_type
VEC & vector_type
Convenience type definition.
Definition
JaggedVecPersVector.h:32
xAOD::AuxPersVector< SG::JaggedVecElt< T >, VEC >::AuxPersVector
AuxPersVector(SG::auxid_t auxid, vector_type vec, bool isLinked, SG::IAuxStore *store)
Constructor.
Definition
JaggedVecPersVector.h:35
xAOD::AuxPersVector< SG::JaggedVecElt< T >, VEC >::clone
virtual std::unique_ptr< SG::IAuxTypeVector > clone() const override
Make a copy of this vector.
Definition
JaggedVecPersVector.h:42
SG
Forward declaration.
Definition
CaloCellPacker_400_500.h:32
SG::auxid_t
size_t auxid_t
Identifier for a particular aux data item.
Definition
AuxTypes.h:27
xAOD
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
Definition
ICaloAffectedTool.h:24
Generated on
for ATLAS Offline Software by
1.17.0