ATLAS Offline Software
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 }
eflowRecCluster
This class extends the information about a xAOD::CaloCluster.
Definition: eflowRecCluster.h:40
skel.it
it
Definition: skel.GENtoEVGEN.py:423
eflowRecTrack
This class extends the information about a xAOD::Track.
Definition: eflowRecTrack.h:45
SG::SlotSpecificObj
Maintain a set of objects, one per slot.
Definition: AthenaKernel/AthenaKernel/SlotSpecificObj.h:70
SlotSpecificObj.h
Maintain a set of objects, one per slot.
xAOD::track
@ track
Definition: TrackingPrimitives.h:512
ATLAS_THREAD_SAFE
#define ATLAS_THREAD_SAFE
Definition: checker_macros.h:211
checker_macros.h
Define macros for attributes used to control the static checker.
python.compressB64.c
def c
Definition: compressB64.py:93
mapkey::key
key
Definition: TElectronEfficiencyCorrectionTool.cxx:37