00001 #ifndef Alignment_TwoBodyDecay_TwoBodyDecayLinearizationPointFinder_h 00002 #define Alignment_TwoBodyDecay_TwoBodyDecayLinearizationPointFinder_h 00003 00004 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00005 #include "Alignment/TwoBodyDecay/interface/TwoBodyDecayParameters.h" 00006 #include "RecoVertex/VertexTools/interface/PerigeeLinearizedTrackState.h" 00007 00016 class TwoBodyDecayLinearizationPointFinder 00017 { 00018 00019 public: 00020 00021 typedef PerigeeLinearizedTrackState::RefCountedLinearizedTrackState RefCountedLinearizedTrackState; 00022 00023 TwoBodyDecayLinearizationPointFinder( const edm::ParameterSet & config ) {} 00024 00025 virtual ~TwoBodyDecayLinearizationPointFinder( void ) {} 00026 00027 virtual const TwoBodyDecayParameters 00028 getLinearizationPoint( const std::vector< RefCountedLinearizedTrackState > & tracks, 00029 const double primaryMass, 00030 const double secondaryMass ) const; 00031 00032 virtual TwoBodyDecayLinearizationPointFinder* clone( void ) const { return new TwoBodyDecayLinearizationPointFinder( *this ); } 00033 00034 }; 00035 00036 #endif