File indexing completed on 2024-04-06 12:29:10
0001 #ifndef FinalTreeBuilder_H
0002 #define FinalTreeBuilder_H
0003
0004 #include "RecoVertex/KinematicFitPrimitives/interface/RefCountedKinematicTree.h"
0005 #include "RecoVertex/KinematicFitPrimitives/interface/KinematicVertexFactory.h"
0006 #include "RecoVertex/KinematicFitPrimitives/interface/VirtualKinematicParticleFactory.h"
0007 #include "RecoVertex/VertexPrimitives/interface/CachingVertex.h"
0008 #include "RecoVertex/KinematicFitPrimitives/interface/KinematicRefittedTrackState.h"
0009 #include "RecoVertex/KinematicFitPrimitives/interface/Matrices.h"
0010
0011
0012
0013
0014
0015
0016 class FinalTreeBuilder {
0017 public:
0018 FinalTreeBuilder();
0019
0020 ~FinalTreeBuilder();
0021
0022 RefCountedKinematicTree buildTree(const CachingVertex<6>& vtx,
0023 const std::vector<RefCountedKinematicParticle>& input) const;
0024
0025 private:
0026 typedef ReferenceCountingPointer<VertexTrack<6> > RefCountedVertexTrack;
0027 typedef ReferenceCountingPointer<LinearizedTrackState<6> > RefCountedLinearizedTrackState;
0028 typedef ReferenceCountingPointer<RefittedTrackState<6> > RefCountedRefittedTrackState;
0029
0030
0031 AlgebraicMatrix momentumPart(const CachingVertex<6>& vtx, const AlgebraicVector7& par) const;
0032
0033 KinematicVertexFactory* kvFactory;
0034 VirtualKinematicParticleFactory* pFactory;
0035 };
0036
0037 #endif