Back to home page

Project CMSSW displayed by LXR

 
 

    


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

0001 #ifndef FallbackLinearizationPointFinder_H
0002 #define FallbackLinearizationPointFinder_H
0003 
0004 #include "RecoVertex/VertexTools/interface/LinearizationPointFinder.h"
0005 #include "RecoVertex/VertexTools/interface/HsmModeFinder3d.h"
0006 
0007 /** 
0008    *  A fallback linearization point finder that is
0009    *  used if the 'actual' CrossingPtBasedLinPtFinder fails.
0010    *  Computes the mode based on innermost states.
0011    */
0012 
0013 class FallbackLinearizationPointFinder : public LinearizationPointFinder {
0014 public:
0015   FallbackLinearizationPointFinder(const ModeFinder3d& m = HsmModeFinder3d());
0016   GlobalPoint getLinearizationPoint(const std::vector<reco::TransientTrack>&) const override;
0017   GlobalPoint getLinearizationPoint(const std::vector<FreeTrajectoryState>&) const override;
0018 
0019   FallbackLinearizationPointFinder* clone() const override { return new FallbackLinearizationPointFinder(*this); };
0020 
0021 private:
0022   ModeFinder3d* theModeFinder;
0023 };
0024 
0025 #endif