File indexing completed on 2023-03-17 11:26:25
0001 #ifndef MultiTrajectoryStateMerger_H
0002 #define MultiTrajectoryStateMerger_H
0003
0004 #include "TrackingTools/GsfTools/interface/MultiGaussianStateMerger.h"
0005 #include "TrackingTools/TrajectoryState/interface/TrajectoryStateOnSurface.h"
0006
0007 class TrajectoryStateOnSurface;
0008
0009
0010
0011
0012
0013 class MultiTrajectoryStateMerger {
0014 public:
0015 MultiTrajectoryStateMerger(const MultiGaussianStateMerger<5>& merger) : theMultiStateMerger(merger.clone()) {}
0016 TrajectoryStateOnSurface merge(const TrajectoryStateOnSurface& tsos) const;
0017 MultiTrajectoryStateMerger* clone() const { return new MultiTrajectoryStateMerger(*this); }
0018
0019 private:
0020 const std::shared_ptr<const MultiGaussianStateMerger<5> > theMultiStateMerger;
0021 };
0022
0023 #endif