CMS 3D CMS Logo

FallbackLinearizationPointFinder Class Reference

A fallback linearization point finder that is used if the 'actual' CrossingPtBasedLinPtFinder fails. More...

#include <RecoVertex/LinearizationPointFinders/interface/FallbackLinearizationPointFinder.h>

Inheritance diagram for FallbackLinearizationPointFinder:

LinearizationPointFinder

List of all members.

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

ModeFinder3dtheModeFinder


Detailed Description

A fallback linearization point finder that is used if the 'actual' CrossingPtBasedLinPtFinder fails.

Computes the mode based on innermost states.

Definition at line 13 of file FallbackLinearizationPointFinder.h.


Constructor & Destructor Documentation

FallbackLinearizationPointFinder::FallbackLinearizationPointFinder ( const ModeFinder3d m = HsmModeFinder3d()  ) 

Definition at line 6 of file FallbackLinearizationPointFinder.cc.

Referenced by clone().

00007                              : theModeFinder ( m.clone() ) {}


Member Function Documentation

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 }


Member Data Documentation

ModeFinder3d* FallbackLinearizationPointFinder::theModeFinder [private]

Definition at line 23 of file FallbackLinearizationPointFinder.h.

Referenced by getLinearizationPoint().


The documentation for this class was generated from the following files:
Generated on Tue Jun 9 18:20:39 2009 for CMSSW by  doxygen 1.5.4