CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_1/src/RecoVertex/GaussianSumVertexFit/interface/GsfVertexMerger.h

Go to the documentation of this file.
00001 #ifndef GsfVertexMerger_H
00002 #define GsfVertexMerger_H
00003 
00004 #include "TrackingTools/GsfTools/interface/MultiGaussianStateMerger.h"
00005 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00006 #include "DataFormats/GeometryCommonDetAlgo/interface/DeepCopyPointerByClone.h"
00007 #include "RecoVertex/VertexPrimitives/interface/CachingVertex.h"
00008 
00013 class VertexState;
00014 
00015 class GsfVertexMerger {
00016 public:
00017 
00018   GsfVertexMerger(const edm::ParameterSet& pSet);
00019   ~GsfVertexMerger() {}
00020 
00021   CachingVertex<5> merge(const CachingVertex<5> & vertex) const;
00022 
00023   VertexState merge(const VertexState & vertex) const;
00024 
00025   GsfVertexMerger * clone() const {
00026     return new GsfVertexMerger(* this);
00027   }
00028 
00029 private:
00030   DeepCopyPointerByClone< MultiGaussianStateMerger<3> > merger;
00031   unsigned int maxComponents;
00032 };
00033 
00034 #endif