Go to the documentation of this file.00001 #ifndef RecoPixelVertexing_DivisiveVertexFinder_h
00002 #define RecoPixelVertexing_DivisiveVertexFinder_h
00003
00026 #include <vector>
00027 #include "DataFormats/VertexReco/interface/Vertex.h"
00028 #include "DataFormats/VertexReco/interface/VertexFwd.h"
00029 #include "DataFormats/TrackReco/interface/Track.h"
00030 #include "DataFormats/TrackReco/interface/TrackFwd.h"
00031
00032 #include "RecoPixelVertexing/PixelVertexFinding/interface/DivisiveClusterizer1D.h"
00033
00034 class DivisiveVertexFinder {
00035 public:
00036 DivisiveVertexFinder(double zOffset=5.0, int ntrkMin=5, bool useError=true,
00037 double zSeparation=0.05, bool wtAverage=true, int verbosity=0);
00038 ~DivisiveVertexFinder();
00039
00041 bool findVertexes(const reco::TrackRefVector &trks,
00042 reco::VertexCollection &vertexes);
00043 bool findVertexesAlt(const reco::TrackRefVector &trks,
00044 reco::VertexCollection &vertexes, const math::XYZPoint & bs);
00045 private:
00047 double zOffset_, zSeparation_;
00048 int ntrkMin_;
00049 bool useError_, wtAverage_;
00050
00052 pixeltemp::DivisiveClusterizer1D< reco::Track > divmeth_;
00053
00054
00055
00056 int verbose_;
00057
00058 };
00059 #endif