00001 #ifndef ParticleKinematicLinearizedTrackStateFactory_H 00002 #define ParticleKinematicLinearizedTrackStateFactory_H 00003 00004 #include "RecoVertex/VertexPrimitives/interface/LinearizedTrackState.h" 00005 #include "DataFormats/GeometrySurface/interface/ReferenceCounted.h" 00006 #include "RecoVertex/KinematicFitPrimitives/interface/ParticleKinematicLinearizedTrackState.h" 00007 #include "RecoVertex/VertexTools/interface/AbstractLTSFactory.h" 00008 00009 class ParticleKinematicLinearizedTrackStateFactory : public AbstractLTSFactory<6>{ 00010 00016 public: 00017 00022 RefCountedLinearizedTrackState linearizedTrackState(const GlobalPoint & linP, 00023 RefCountedKinematicParticle & prt) const; 00024 00025 virtual RefCountedLinearizedTrackState 00026 linearizedTrackState(const GlobalPoint & linP, const reco::TransientTrack & track) const; 00027 00028 virtual RefCountedLinearizedTrackState 00029 linearizedTrackState(const GlobalPoint & linP, const reco::TransientTrack & track, 00030 const TrajectoryStateOnSurface& tsos) const; 00031 00032 virtual const ParticleKinematicLinearizedTrackStateFactory * clone() const; 00033 00034 }; 00035 #endif