CMS 3D CMS Logo

AdaptiveGsfVertexFitter.h

Go to the documentation of this file.
00001 #ifndef AdaptiveGsfVertexFitter_H
00002 #define AdaptiveGsfVertexFitter_H
00003 
00004 #include "RecoVertex/VertexPrimitives/interface/VertexFitter.h"
00005 #include "RecoVertex/LinearizationPointFinders/interface/DefaultLinearizationPointFinder.h"
00006 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00007 #include "RecoVertex/AdaptiveVertexFit/interface/AdaptiveVertexFitter.h"
00008 
00016 class AdaptiveGsfVertexFitter : public VertexFitter<5> {
00017 
00018 public:
00019 
00020   typedef CachingVertex<5>::RefCountedVertexTrack RefCountedVertexTrack;
00021 
00027   AdaptiveGsfVertexFitter(const edm::ParameterSet& pSet,
00028         const LinearizationPointFinder & linP = DefaultLinearizationPointFinder());
00029 
00030   virtual ~AdaptiveGsfVertexFitter();
00031 
00036   AdaptiveGsfVertexFitter(const AdaptiveGsfVertexFitter & original);
00037 
00038   AdaptiveGsfVertexFitter * clone() const {
00039     return new AdaptiveGsfVertexFitter(* this);
00040   }
00041 
00042 public:
00043 
00046   virtual inline CachingVertex<5> 
00047     vertex(const std::vector<reco::TransientTrack>  & tracks) const
00048   {
00049     return theFitter->vertex(tracks);
00050   }
00051 
00054   virtual inline CachingVertex<5> 
00055   vertex(const vector<RefCountedVertexTrack> & tracks) const
00056   {
00057     return theFitter->vertex(tracks);
00058   }
00059 
00063   virtual inline CachingVertex<5> 
00064     vertex(const std::vector<reco::TransientTrack>  & tracks, 
00065            const GlobalPoint& linPoint) const
00066   {
00067     return theFitter->vertex(tracks, linPoint);
00068   }
00069 
00074   virtual inline CachingVertex<5> 
00075   vertex(const vector<reco::TransientTrack> & tracks, const reco::BeamSpot& beamSpot) const
00076   {
00077     return theFitter->vertex(tracks, beamSpot);
00078   }
00079 
00080 
00086   virtual inline CachingVertex<5> 
00087   vertex(const std::vector<reco::TransientTrack> & tracks, 
00088          const GlobalPoint& priorPos,
00089          const GlobalError& priorError) const
00090   {
00091     return theFitter->vertex(tracks, priorPos, priorError);
00092   }
00093 
00098   virtual inline CachingVertex<5> 
00099   vertex(const vector<RefCountedVertexTrack> & tracks, 
00100          const GlobalPoint& priorPos,
00101          const GlobalError& priorError) const
00102   {
00103     return theFitter->vertex(tracks, priorPos, priorError);
00104   }
00105 
00106 private:
00107   
00108   AdaptiveVertexFitter  * theFitter;
00109 //   LinearizationPointFinder*  theLinP;
00110 //   GsfVertexUpdator  theUpdator;
00111 //   VertexSmoother * theSmoother;
00112 // 
00113 //   MultiPerigeeLTSFactory lTrackFactory;
00114 //   VertexTrackFactory vTrackFactory;
00115 //   DeepCopyPointerByClone<GsfVertexMerger> theMerger;
00116 };
00117 
00118 #endif

Generated on Tue Jun 9 17:46:05 2009 for CMSSW by  doxygen 1.5.4