ATLAS Offline Software
Loading...
Searching...
No Matches
electronSuperClusterBuilder.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef EGAMMAALGS_ELECTRONSUPERCLUSTERBUILDER_H
6#define EGAMMAALGS_ELECTRONSUPERCLUSTERBUILDER_H
7
9
10#include "GaudiKernel/EventContext.h"
14
16
17// Fwd declarations
23
24#include <string>
25#include <vector>
26
69
70
72{
73
74public:
75 // Constructor/destructor.
76 electronSuperClusterBuilder(const std::string& name,
77 ISvcLocator* pSvcLocator);
78
79 // Tool standard routines.
80 virtual StatusCode initialize() override final;
81
82private:
83 virtual bool egammaRecPassesSelection(
84 const egammaRec *egRec) const override final;
85
87 const egammaRec *egRec) const override final;
88
89 virtual StatusCode redoMatching(
90 const EventContext &ctx,
91 SG::WriteHandle<EgammaRecContainer> &newEgammaRecs) const override final;
110 virtual std::vector<std::size_t> searchForSecondaryClusters(
111 const size_t i,
112 const EgammaRecContainer*,
113 std::vector<bool>& isUsed) const override final;
114
116 Gaudi::Property<int> m_maxDelEtaCells{
117 this,
118 "MaxWindowDelEtaCells",
119 5,
120 "Size of maximum search window in eta"
121 };
122
123 Gaudi::Property<int> m_maxDelPhiCells{
124 this,
125 "MaxWindowDelPhiCells",
126 12,
127 "Size of maximum search window in phi"
128 };
129
130 Gaudi::Property<std::size_t> m_numberOfPixelHits{
131 this,
132 "NumberOfReqPixelHits",
133 0,
134 "Number of required pixel hits for electrons"
135 };
136
137 Gaudi::Property<std::size_t> m_numberOfSiHits{
138 this,
139 "NumberOfReqSiHits",
140 7,
141 "Number of required silicon hits for electrons"
142 };
143
145 ToolHandle<IEMTrackMatchBuilder> m_trackMatchBuilder{
146 this,
147 "TrackMatchBuilderTool",
148 "EMTrackMatchBuilder",
149 "Tool that matches tracks to egammaRecs"
150 };
151
153 Gaudi::Property<bool> m_doTrackMatching{
154 this,
155 "doTrackMatching",
156 true,
157 "Boolean to do track matching" };
158
159 float m_maxDelEta {};
160 float m_maxDelPhi {};
161};
162
163#endif
Definition of CaloDetDescrManager.
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid from which a WriteHandle is made.
Represent an egamma object for internal egamma usage during reconstruction.
Definition egammaRec.h:31
egammaSuperClusterBuilderBase(const std::string &name, ISvcLocator *pSvcLocator)
Protected constructor since this class should not be instantiated by itself.
virtual bool egammaRecPassesSelection(const egammaRec *egRec) const override final
Gaudi::Property< std::size_t > m_numberOfSiHits
virtual std::vector< std::size_t > searchForSecondaryClusters(const size_t i, const EgammaRecContainer *, std::vector< bool > &isUsed) const override final
Search for secondary clusters.
virtual StatusCode redoMatching(const EventContext &ctx, SG::WriteHandle< EgammaRecContainer > &newEgammaRecs) const override final
Gaudi::Property< int > m_maxDelEtaCells
Size of maximum search window in eta.
virtual xAOD::EgammaParameters::EgammaType getEgammaRecType(const egammaRec *egRec) const override final
virtual StatusCode initialize() override final
should be called by the derived class in the initialize phase
Gaudi::Property< std::size_t > m_numberOfPixelHits
electronSuperClusterBuilder(const std::string &name, ISvcLocator *pSvcLocator)
Gaudi::Property< int > m_maxDelPhiCells
Size of maximum search window in phi.
Gaudi::Property< bool > m_doTrackMatching
private member flag to do the track matching
ToolHandle< IEMTrackMatchBuilder > m_trackMatchBuilder
Tool to perform track matching.
DataVector< egammaRec > EgammaRecContainer
The container is a simple typedef for now.