CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_0/src/RecoVertex/KinematicFitPrimitives/interface/KinematicVertexAssociator.h

Go to the documentation of this file.
00001 #ifndef KinematicVertexAssociator_H
00002 #define KinematicVertexAssociator_H
00003 
00004 #include <vector>
00005 #include "TrackerReco/TkEvent/interface/TkSimVertex.h"
00006 #include "RecoVertex/KinematicFitPrimitives/interface/RefCountedKinematicVertex.h"
00016 class TkSimVertex;
00017 //class RefCountedKinematicVertex;
00018 
00019 class KinematicVertexAssociator {
00020 public:
00021     
00022   typedef std::vector<RefCountedKinematicVertex> KinematicVertexContainer;
00023   typedef std::vector<const TkSimVertex *> SimVertexPtrContainer;   
00024   typedef std::vector<const TkSimVertex> SimVertexContainer;   
00025 
00026   virtual ~KinematicVertexAssociator() {}
00027 
00028   virtual SimVertexPtrContainer simVertices(const RefCountedKinematicVertex&) const = 0;
00029   
00030   virtual KinematicVertexContainer recVertices(const TkSimVertex&) const = 0;
00031 
00032   virtual KinematicVertexAssociator * clone() const = 0;
00033   
00034 };
00035 
00036 
00037 #endif