ATLAS Offline Software
Loading...
Searching...
No Matches
EleEleOverlapTool.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef ASSOCIATIONUTILS_ELEELEOVERLAPTOOL_H
6#define ASSOCIATIONUTILS_ELEELEOVERLAPTOOL_H
7
8// EDM includes
11
12// Columnar includes
18
19// Local includes
22
23namespace ORUtils
24{
25
42 class EleEleOverlapTool : public virtual IOverlapTool,
43 public BaseOverlapTool
44 {
45
48
49 public:
50
52 EleEleOverlapTool(const std::string& name);
53
56 virtual StatusCode
59 columnar::EventContextId eventContext) const override;
60
63 virtual StatusCode
65
66 protected:
67
69 virtual StatusCode initializeDerived() override;
70
71 private:
72
75
78
81
84
87
90
93
95
110 std::unique_ptr<Accessors> m_accessors {std::make_unique<Accessors> (this)};
111
112 }; // class EleEleOverlapTool
113
114} // namespace ORUtils
115
116#endif
#define ASG_TOOL_CLASS(CLASSNAME, INT1)
BaseOverlapTool(const std::string &name)
Create proper constructor for Athena.
double m_clusterDeltaPhi
Cluster-matching dPhi.
columnar::VariantContainerId< columnar::ContainerId::track0, columnar::ContainerId::track0 > MyTrackDef
Columnar accessors.
virtual StatusCode findOverlaps(columnar::Particle1Range cont1, columnar::Particle2Range cont2, columnar::EventContextId eventContext) const override
Identify overlapping electrons.
EleEleOverlapTool(const std::string &name)
Create proper constructor for Athena.
virtual StatusCode initializeDerived() override
Initialize the tool.
bool rejectFirst(columnar::Particle1Id el1, columnar::Particle1Id el2) const
Helper method to decide which electron to reject.
bool electronsMatch(columnar::Particle1Id el1, columnar::Particle1Id el2) const
Helper method for matching electrons.
double m_clusterDeltaEta
Cluster-matching dEta.
std::unique_ptr< Accessors > m_accessors
virtual StatusCode internalFindOverlaps(columnar::Particle1Range electrons) const
Identify overlapping electrons and jets.
bool m_useTrackMatch
Match electrons by shared track (on by default)
bool m_useClusterMatch
Match electrons by cluster distance (off by default)
Interface class for overlap removal tools.
the base class for all columnar components
ObjectId< ContainerId::particle1 > Particle1Id
Definition ParticleDef.h:48
AccessorTemplate< ContainerId::track0, CT, ColumnAccessMode::input, CM > Track0Accessor
Definition TrackDef.h:52
ObjectId< ContainerId::eventContext > EventContextId
ObjectRange< ContainerId::particle2 > Particle2Range
Definition ParticleDef.h:53
ObjectRange< ContainerId::particle1 > Particle1Range
Definition ParticleDef.h:47
AccessorTemplate< ContainerId::cluster, CT, ColumnAccessMode::input, CM > ClusterAccessor
Definition ClusterDef.h:28
AccessorTemplate< ContainerId::particle1, CT, ColumnAccessMode::input, CM > Particle1Accessor
Definition ParticleDef.h:50
columnar::Track0Accessor< columnar::ObjectColumn > m_track0Acc
columnar::ClusterAccessor< columnar::ObjectColumn > m_clusterContainerAcc
std::optional< columnar::ClusterHelpers::EtaBEAccessor<> > m_etaBEAcc
columnar::Particle1Accessor< float > m_ptAcc
std::optional< columnar::ClusterHelpers::PhiBEAccessor<> > m_phiBEAcc
columnar::Particle1Accessor< std::uint16_t > m_authorAcc
columnar::Particle1Accessor< std::vector< columnar::OptClusterId > > m_caloClusterAcc
columnar::Particle1Accessor< std::vector< columnar::OptTrackId > > m_trackAcc
a "variant" ContainerId
Definition VariantDef.h:98