#include <RecoVertex/LinearizationPointFinders/interface/FallbackLinearizationPointFinder.h>
Public Member Functions | |
virtual FallbackLinearizationPointFinder * | clone () const |
Clone method. | |
FallbackLinearizationPointFinder (const ModeFinder3d &m=HsmModeFinder3d()) | |
virtual GlobalPoint | getLinearizationPoint (const vector< FreeTrajectoryState > &) const |
virtual GlobalPoint | getLinearizationPoint (const vector< reco::TransientTrack > &) const |
Private Attributes | |
ModeFinder3d * | theModeFinder |
Computes the mode based on innermost states.
Definition at line 13 of file FallbackLinearizationPointFinder.h.
FallbackLinearizationPointFinder::FallbackLinearizationPointFinder | ( | const ModeFinder3d & | m = HsmModeFinder3d() |
) |
Definition at line 6 of file FallbackLinearizationPointFinder.cc.
Referenced by clone().
00007 : theModeFinder ( m.clone() ) {}
virtual FallbackLinearizationPointFinder* FallbackLinearizationPointFinder::clone | ( | ) | const [inline, virtual] |
Clone method.
Implements LinearizationPointFinder.
Definition at line 20 of file FallbackLinearizationPointFinder.h.
References FallbackLinearizationPointFinder().
00021 { 00022 return new FallbackLinearizationPointFinder ( * this ); 00023 };
GlobalPoint FallbackLinearizationPointFinder::getLinearizationPoint | ( | const vector< FreeTrajectoryState > & | tracks | ) | const [virtual] |
Definition at line 9 of file FallbackLinearizationPointFinder.cc.
00011 { 00012 return GlobalPoint(0.,0.,0.); 00013 }
GlobalPoint FallbackLinearizationPointFinder::getLinearizationPoint | ( | const vector< reco::TransientTrack > & | tracks | ) | const [virtual] |
Definition at line 15 of file FallbackLinearizationPointFinder.cc.
References i, theModeFinder, and tmp.
00017 { 00018 switch ( tracks.size() ) 00019 { 00020 case 0: 00021 return GlobalPoint ( 0.,0.,0. ); 00022 case 1: 00023 return tracks.begin()->impactPointState().globalPosition(); 00024 default: 00025 { 00026 vector < pair < GlobalPoint, float > > wtracks; 00027 wtracks.reserve ( tracks.size() - 1 ); 00028 for ( vector< reco::TransientTrack >::const_iterator i=tracks.begin(); 00029 i!=tracks.end() ; ++i ) 00030 { 00031 pair < GlobalPoint, float > tmp ( 00032 i->impactPointState().globalPosition(), 1. ); 00033 wtracks.push_back ( tmp ); 00034 } 00035 return (*theModeFinder) ( wtracks ); 00036 } 00037 } 00038 return GlobalPoint ( 0.,0.,0. ); 00039 }
Definition at line 23 of file FallbackLinearizationPointFinder.h.
Referenced by getLinearizationPoint().