Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:29:19

0001 #ifndef _LinearizationPointFinder_H_
0002 #define _LinearizationPointFinder_H_
0003 
0004 #include "TrackingTools/TransientTrack/interface/TransientTrack.h"
0005 #include "DataFormats/GeometryVector/interface/GlobalPoint.h"
0006 #include <vector>
0007 class FreeTrajectoryState;
0008 
0009 /**  Generic class to make an Initial Linearization point
0010  */
0011 
0012 class LinearizationPointFinder {
0013 public:
0014   virtual ~LinearizationPointFinder() {}
0015 
0016   /** Virtual method returning the Initial Linearization Point
0017    *  as an object of type GlobalPoint
0018    */
0019 
0020   virtual GlobalPoint getLinearizationPoint(const std::vector<reco::TransientTrack> &) const = 0;
0021 
0022   virtual GlobalPoint getLinearizationPoint(const std::vector<FreeTrajectoryState> &) const;
0023 
0024   /**
0025    *  Clone method
0026    */
0027   virtual LinearizationPointFinder *clone() const = 0;
0028 };
0029 
0030 #endif