3 template <
unsigned int N>
7 : theVertexTrackUpdator(vtu.
clone()),
8 theVertexSmoothedChiSquaredEstimator(vse.
clone()),
9 theTrackToTrackCovCalculator(covCalc.
clone()) {}
11 template <
unsigned int N>
13 delete theVertexTrackUpdator;
14 delete theVertexSmoothedChiSquaredEstimator;
15 delete theTrackToTrackCovCalculator;
18 template <
unsigned int N>
25 template <
unsigned int N>
29 std::vector<RefCountedVertexTrack> newTracks;
30 if (theVertexTrackUpdator !=
nullptr) {
31 const std::vector<RefCountedVertexTrack>& vOut = vertex.
tracks();
32 for (
typename std::vector<RefCountedVertexTrack>::const_iterator
i = vOut.begin();
i != vOut.end();
i++) {
34 newTracks.push_back(nTrack);
37 newTracks = vertex.
tracks();
50 if (theVertexSmoothedChiSquaredEstimator !=
nullptr) {
51 std::pair<bool, double>
result = theVertexSmoothedChiSquaredEstimator->estimate(interVertex);
52 smChi2 = result.second;
55 if (theTrackToTrackCovCalculator ==
nullptr) {
const VertexTrackUpdator< N > * vertexTrackUpdator() const
std::vector< RefCountedVertexTrack > tracks() const
VertexState const & vertexState() const
GlobalError priorError() const
CachingVertex< N > smooth(const CachingVertex< N > &vertex) const override
SequentialVertexSmoother(const VertexTrackUpdator< N > &vtu, const VertexSmoothedChiSquaredEstimator< N > &vse, const TrackToTrackCovCalculator< N > &covCalc)
GlobalWeight weight() const
float totalChiSquared() const
const VertexSmoothedChiSquaredEstimator< N > * vertexSmoothedChiSquaredEstimator() const
VertexState const & priorVertexState() const
TEveGeoShape * clone(const TEveElement *element, TEveElement *parent)
const TrackToTrackCovCalculator< N > * trackToTrackCovCalculator() const
GlobalPoint position() const
~SequentialVertexSmoother() override
GlobalPoint priorPosition() const
std::map< RefCountedVertexTrack, TrackMap > TrackToTrackMap