File indexing completed on 2024-04-06 12:29:08
0001 #ifndef RecoBTag_VertexGhostTrackState_h
0002 #define RecoBTag_VertexGhostTrackState_h
0003
0004 #include <utility>
0005
0006 #include "DataFormats/GeometryVector/interface/GlobalPoint.h"
0007 #include "DataFormats/GeometryCommonDetAlgo/interface/GlobalError.h"
0008
0009 #include "RecoVertex/GhostTrackFitter/interface/BasicGhostTrackState.h"
0010
0011 namespace reco {
0012
0013 class GhostTrackPrediction;
0014
0015 class VertexGhostTrackState : public BasicGhostTrackState {
0016 public:
0017 VertexGhostTrackState(const GlobalPoint &pos, const CovarianceMatrix &cov) : position_(pos), covariance_(cov) {}
0018
0019 GlobalPoint globalPosition() const override { return position_; }
0020 GlobalError cartesianError() const override { return covariance_; }
0021 CovarianceMatrix cartesianCovariance() const override { return covariance_; }
0022
0023 Vertex vertexStateOnGhostTrack(const GhostTrackPrediction &pred, bool withMeasurementError) const override;
0024 Vertex vertexStateOnMeasurement(const GhostTrackPrediction &pred, bool withGhostTrackError) const override;
0025
0026 private:
0027 pointer clone() const override { return build<VertexGhostTrackState>(*this); }
0028
0029 GlobalPoint position_;
0030 CovarianceMatrix covariance_;
0031 };
0032
0033 }
0034
0035 #endif