|
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef TRKVERTEXSEEDFINDERTOOLS_ZScanSeedFinder_H
6 #define TRKVERTEXSEEDFINDERTOOLS_ZScanSeedFinder_H
9 #include "GaudiKernel/ToolHandle.h"
21 #include <unordered_map>
70 findSeed (
const std::vector<const Trk::Track*> & vectorTrk,
107 std::pair<
double,
double>
124 "key for EventInfo retrieval"
129 "Trk::FsmwMode1dFinder" };
134 "Trk::TrackToVertexIPEstimator"
148 typedef std::pair<Trk::Perigee, Amg::Vector2D>
key_t;
156 std::hash<double>()(
p.first.parameters()[
Trk::d0]) ^
157 std::hash<double>()(
p.first.parameters()[
Trk::z0]) ^
158 std::hash<double>()(
p.first.parameters()[
Trk::phi]) ^
159 std::hash<double>()(
p.first.parameters()[
Trk::theta]) ^
160 std::hash<double>()(
p.first.parameters()[
Trk::qOverP]) ^
161 std::hash<double>()(
p.second.x()) ^
162 std::hash<double>()(
p.second.y());
170 const AmgVector(5)& lparams = left.first.parameters();
171 const AmgVector(5)& rparams = right.first.parameters();
178 left.second.x() == right.second.x() &&
179 left.second.y() == right.second.y();
185 typedef std::unordered_map< key_t, value_t, hash_perigee, pred_perigee>
189 EventContext::ContextEvt_t
m_evt = -1;
ToolHandle< ITrackToVertexIPEstimator > m_IPEstimator
SG::SlotSpecificObj< Cache > m_cache ATLAS_THREAD_SAFE
Dummy class used to allow special convertors to be called for surfaces owned by a detector element.
virtual Amg::Vector3D findSeed(const std::vector< const Trk::Track * > &vectorTrk, const xAOD::Vertex *constraint=0) const override final
Finds a linearization point out of a vector of tracks and returns it as an Amg::Vector3D object.
std::pair< double, double > value_t
virtual StatusCode finalize() override
SG::ReadHandleKey< xAOD::EventInfo > m_eventInfoKey
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
bool const RAWDATA *ch2 const
bool operator()(const key_t &left, const key_t &right) const
virtual std::vector< Amg::Vector3D > findMultiSeeds(const std::vector< const Trk::Track * > &vectorTrk, const xAOD::Vertex *constraint=0) const override final
Finds full vector of linearization points from a vector of tracks and returns it as an Amg::Vector3D ...
ToolHandle< IMode1dFinder > m_mode1dfinder
std::pair< double, double > estimateWeight(const Trk::Perigee &iTrk, const xAOD::Vertex *constraint) const
Estimate z-position and weight for one track.
std::pair< double, double > DoubleAndWeight
EventContext::ContextEvt_t m_evt
Maintain a set of objects, one per slot.
size_t operator()(const key_t &p) const
::StatusCode StatusCode
StatusCode definition for legacy code.
std::vector< Trk::DoubleAndWeight > getPositionsUncached(const std::vector< const Trk::TrackParameters * > &perigeeList, const xAOD::Vertex *constraint) const
virtual StatusCode initialize() override
ZScanSeedFinder(const std::string &t, const std::string &n, const IInterface *p)
virtual Amg::Vector3D findSeed(const std::vector< const Trk::Track * > &vectorTrk, const xAOD::Vertex *constraint=0) const =0
Finds a linearization point out of a vector of tracks and returns it as an Amg::Vector3D object.
Ensure that the ATLAS eigen extensions are properly loaded.
Definition of ATLAS Math & Geometry primitives (Amg)
std::unordered_map< key_t, value_t, hash_perigee, pred_perigee > WeightMap_t
std::vector< Trk::DoubleAndWeight > getPositionsCached(const std::vector< const Trk::TrackParameters * > &perigeeList, const xAOD::Vertex *constraint) const
This class provides general information about an event. Event information is provided by the accessor...
Eigen::Matrix< double, 3, 1 > Vector3D
Class describing a Vertex.
virtual ~ZScanSeedFinder()
Maintain a set of objects, one per slot.
std::pair< Trk::Perigee, Amg::Vector2D > key_t
Define macros for attributes used to control the static checker.