|
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef EGAMMAALGS_PHOTONSUPERCLUSTERBUILDER_H
6 #define EGAMMAALGS_PHOTONSUPERCLUSTERBUILDER_H
10 #include "GaudiKernel/EventContext.h"
76 const egammaRec *egRec)
const override final;
79 const EventContext &ctx,
112 std::size_t photonInd,
114 std::vector<bool>& isUsed)
const override final;
118 const std::vector<const xAOD::Vertex*>& seedVertices,
119 const std::vector<xAOD::EgammaParameters::ConversionType>& seedVertexType,
124 const std::vector<const xAOD::TrackParticle*>& seedVertexTracks,
130 "ConversionBuilderTool",
131 "EMConversionBuilder",
132 "Tool that matches conversion vertices to egammaRecs"
139 "AddClustersInWindow",
141 "add the topoclusters in window"
147 "AddClustersMatchingVtx",
149 "add the topoclusters matching conversion vertex"
155 "UseOnlyLeadingVertex",
157 "use only the leading vertex for matching"
165 "use only vertices/tracks with silicon tracks for adding sec. clusters "
166 "(Mix not considered Si)"
172 "AddClustrsMatchingVtxTracks",
174 "add the topoclusters matching conversion vertex tracks"
180 "UseOnlyLeadingTrack",
182 "use only the leading track for matching"
189 "Boolean to do conversion matching" };
Property holding a SG store/key/clid from which a ReadHandle is made.
virtual xAOD::EgammaParameters::EgammaType getEgammaRecType(const egammaRec *egRec) const override final
bool matchesVtx(const std::vector< const xAOD::Vertex * > &seedVertices, const std::vector< xAOD::EgammaParameters::ConversionType > &seedVertexType, const egammaRec *egRec) const
Does the cluster share conversion vertex?
photonSuperClusterBuilder(const std::string &name, ISvcLocator *pSvcLocator)
virtual StatusCode initialize() override final
should be called by the derived class in the initialize phase
ToolHandle< IEMConversionBuilder > m_conversionBuilder
Tool to retrieve the conversions.
virtual StatusCode redoMatching(const EventContext &ctx, SG::WriteHandle< EgammaRecContainer > &newEgammaRecs) const final override
Definition of CaloDetDescrManager.
Gaudi::Property< bool > m_useOnlyLeadingVertex
use only the leading vertex for matching
virtual std::vector< std::size_t > searchForSecondaryClusters(std::size_t photonInd, const EgammaRecContainer *egammaRecs, std::vector< bool > &isUsed) const override final
Return extra clusters that can be added to make supercluster.
Gaudi::Property< bool > m_useOnlySi
use only vertices/tracks with silicon tracks
Gaudi::Property< bool > m_doConversions
private member flag to do the conversion building and matching
::StatusCode StatusCode
StatusCode definition for legacy code.
Gaudi::Property< bool > m_addClustersInWindow
add the topoclusters in window
Property holding a SG store/key/clid from which a WriteHandle is made.
bool matchesVtxTrack(const std::vector< const xAOD::TrackParticle * > &seedVertexTracks, const egammaRec *egRec) const
Does the cluster match a conversion vertex track with the seed?
Gaudi::Property< bool > m_addClustersMatchingVtx
add the topoclusters matching conversion vertex
Create supercluster under photon hypothesis.
Base class for electronSuperClusterBuilder photonSuperClusterBuilder egammaSuperClusterBuilder This c...
Gaudi::Property< bool > m_addClustersMatchingVtxTracks
add the topoclusters matching conversion vertex tracks
Gaudi::Property< bool > m_useOnlyLeadingTrack
use only the leading track for matching