ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Control
CxxUtils
CxxUtils
sgkey_utilities.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3
*/
12
13
#ifndef CXXUTILS_SGKEY_UTILITIES_H
14
#define CXXUTILS_SGKEY_UTILITIES_H
15
16
#include "
SGCore/sgkey_t.h
"
17
#include "
CxxUtils/ConcurrentMap.h
"
18
#include "
CxxUtils/SimpleUpdater.h
"
19
20
21
namespace
SG
{
22
23
// Separating this avoids a cppcheck syntax error.
24
static
constexpr
auto
s_sgkey_nullval
=
25
static_cast<
CxxUtils::detail::ConcurrentHashmapVal_t
>
(-1);
26
28
template
<
class
T>
29
using
ConcurrentSGKeyMap
=
CxxUtils::ConcurrentMap
<
30
sgkey_t
, T,
31
CxxUtils::SimpleUpdater
,
32
SGKeyHash
,
SGKeyEqual
,
33
0,
s_sgkey_nullval
>;
34
35
}
// namespace SG
36
37
38
#endif
ConcurrentMap.h
Hash map from integers/pointers allowing concurrent, lockless reads.
SimpleUpdater.h
Simple (non-deleting) Updater implementation.
CxxUtils::SimpleUpdater
Simple (non-deleting) Updater implementation.
Definition
SimpleUpdater.h:37
CxxUtils::detail::ConcurrentHashmapVal_t
uintptr_t ConcurrentHashmapVal_t
Type used for keys and values — an unsigned big enough to hold a pointer.
Definition
ConcurrentHashmapImpl.h:40
CxxUtils::ConcurrentMap
ConcurrentMap(Updater_t &&updater, size_type capacity=64, const Context_t &ctx=Updater_t::defaultContext())
Hash map from integers/pointers allowing concurrent, lockless reads.
SG
Forward declaration.
Definition
CaloCellPacker_400_500.h:32
SG::sgkey_t
uint32_t sgkey_t
Type used for hashed StoreGate key+CLID pairs.
Definition
sgkey_t.h:32
SG::s_sgkey_nullval
static constexpr auto s_sgkey_nullval
Definition
sgkey_utilities.h:24
SG::ConcurrentSGKeyMap
CxxUtils::ConcurrentMap< sgkey_t, T, CxxUtils::SimpleUpdater, SGKeyHash, SGKeyEqual, 0, s_sgkey_nullval > ConcurrentSGKeyMap
A concurrent map using sgkey_t as key.
Definition
sgkey_utilities.h:29
sgkey_t.h
SG::SGKeyEqual
Comparison functional for sgkey_t.
Definition
sgkey_t.h:72
SG::SGKeyHash
Hash functional for sgkey_t.
Definition
sgkey_t.h:59
Generated on
for ATLAS Offline Software by
1.17.0