CMS 3D CMS Logo

FallbackLinearizationPointFinder.cc
Go to the documentation of this file.
5 
7 
9  const std::vector<FreeTrajectoryState>& tracks) const {
10  return GlobalPoint(0., 0., 0.);
11 }
12 
14  const std::vector<reco::TransientTrack>& tracks) const {
15  switch (tracks.size()) {
16  case 0:
17  return GlobalPoint(0., 0., 0.);
18  case 1:
19  return tracks.begin()->impactPointState().globalPosition();
20  default: {
21  std::vector<std::pair<GlobalPoint, float> > wtracks;
22  wtracks.reserve(tracks.size() - 1);
23  for (std::vector<reco::TransientTrack>::const_iterator i = tracks.begin(); i != tracks.end(); ++i) {
24  std::pair<GlobalPoint, float> tmp(i->impactPointState().globalPosition(), 1.);
25  wtracks.push_back(tmp);
26  }
27  return (*theModeFinder)(wtracks);
28  }
29  }
30  return GlobalPoint(0., 0., 0.);
31 }
Global3DPoint GlobalPoint
Definition: GlobalPoint.h:10
FallbackLinearizationPointFinder(const ModeFinder3d &m=HsmModeFinder3d())
auto const & tracks
cannot be loose
TEveGeoShape * clone(const TEveElement *element, TEveElement *parent)
Definition: eve_macros.cc:135
GlobalPoint getLinearizationPoint(const std::vector< reco::TransientTrack > &) const override
tmp
align.sh
Definition: createJobs.py:716