4 template <
unsigned int N>
9 theVertexTrackUpdator(vtu.
clone()),
10 theVertexSmoothedChiSquaredEstimator(vse.
clone()),
11 theTrackToTrackCovCalculator(covCalc.
clone())
15 template <
unsigned int N>
18 delete theVertexTrackUpdator;
19 delete theVertexSmoothedChiSquaredEstimator;
20 delete theTrackToTrackCovCalculator;
24 template <
unsigned int N>
29 theVertexSmoothedChiSquaredEstimator
35 template <
unsigned int N>
42 std::vector<RefCountedVertexTrack> newTracks;
43 if (theVertexTrackUpdator != 0) {
44 const std::vector<RefCountedVertexTrack>& vOut=vertex.
tracks();
45 for(
typename std::vector<RefCountedVertexTrack>::const_iterator
i = vOut.begin();
49 newTracks.push_back(nTrack);
52 newTracks = vertex.
tracks();
67 if (theVertexSmoothedChiSquaredEstimator != 0) {
68 std::pair<bool, double>
result = theVertexSmoothedChiSquaredEstimator->estimate(interVertex);
69 smChi2 = result.second;
72 if (theTrackToTrackCovCalculator == 0) {
88 newTracks, smChi2, tkMap);
virtual ~SequentialVertexSmoother()
const VertexTrackUpdator< N > * vertexTrackUpdator() const
VertexState const & vertexState() const
GlobalError priorError() const
std::vector< RefCountedVertexTrack > const & tracks() const
SequentialVertexSmoother(const VertexTrackUpdator< N > &vtu, const VertexSmoothedChiSquaredEstimator< N > &vse, const TrackToTrackCovCalculator< N > &covCalc)
virtual CachingVertex< N > smooth(const CachingVertex< N > &vertex) const
GlobalWeight weight() const
float totalChiSquared() const
const VertexSmoothedChiSquaredEstimator< N > * vertexSmoothedChiSquaredEstimator() const
VertexState const & priorVertexState() const
const TrackToTrackCovCalculator< N > * trackToTrackCovCalculator() const
GlobalPoint position() const
std::map< RefCountedVertexTrack, TrackMap > TrackToTrackMap
GlobalPoint priorPosition() const