ATLAS Offline Software
Loading...
Searching...
No Matches
eflowTrackClusterLink.cxx
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 * eflowTrackClusterLink.cxx
7 *
8 * Created on: 30.09.2013
9 * Author: tlodd
10 */
11
15
16
17
20 eflowRecCluster* cluster,
21 const EventContext& ctx)
22{
24 Cache& c = *slots.get (ctx);
25 std::lock_guard lock (c.m_mutex);
26 if (c.m_evt != ctx.evt()) {
27 c.m_map.clear();
28 c.m_evt = ctx.evt();
29 }
30
31 key_t key (track, cluster);
32 auto it = c.m_map.try_emplace (key, std::unique_ptr<eflowTrackClusterLink>()).first;
33 if (!it->second) {
34 it->second = std::make_unique<eflowTrackClusterLink>(track,cluster);
35 }
36 return it->second.get();
37}
Maintain a set of objects, one per slot.
Define macros for attributes used to control the static checker.
#define ATLAS_THREAD_SAFE
Maintain a set of objects, one per slot.
This class extends the information about a xAOD::CaloCluster.
This class extends the information about a xAOD::Track.