File indexing completed on 2025-01-18 09:28:00
0001
0002
0003
0004
0005
0006
0007
0008
0009 #pragma once
0010
0011 #include "Acts/Definitions/Algebra.hpp"
0012 #include "Acts/Vertexing/TrackAtVertex.hpp"
0013
0014 namespace Acts {
0015
0016
0017
0018 class Vertex {
0019 public:
0020
0021 Vertex() = default;
0022
0023
0024
0025
0026 Vertex(const Vector3& position);
0027
0028
0029
0030
0031 Vertex(const Vector4& position);
0032
0033
0034
0035
0036
0037
0038 Vertex(const Vector3& position, const SquareMatrix3& covariance,
0039 std::vector<TrackAtVertex> tracks);
0040
0041
0042
0043
0044
0045
0046 Vertex(const Vector4& position, const SquareMatrix4& covariance,
0047 std::vector<TrackAtVertex> tracks);
0048
0049
0050 Vector3 position() const;
0051
0052
0053 ActsScalar time() const;
0054
0055
0056 const Vector4& fullPosition() const;
0057 Vector4& fullPosition();
0058
0059
0060 const Vector4& fullSeedPosition() const;
0061 Vector4& fullSeedPosition();
0062
0063
0064 SquareMatrix3 covariance() const;
0065
0066
0067 const SquareMatrix4& fullCovariance() const;
0068 SquareMatrix4& fullCovariance();
0069
0070
0071 const std::vector<TrackAtVertex>& tracks() const;
0072
0073
0074 std::pair<double, double> fitQuality() const;
0075
0076
0077
0078
0079
0080 void setPosition(const Vector3& position, ActsScalar time = 0);
0081
0082
0083
0084
0085 void setFullPosition(const Vector4& fullPosition);
0086
0087
0088
0089
0090 void setTime(ActsScalar time);
0091
0092
0093
0094
0095 void setCovariance(const SquareMatrix3& covariance);
0096
0097
0098
0099
0100 void setFullCovariance(const SquareMatrix4& covariance);
0101
0102
0103 void setTracksAtVertex(std::vector<TrackAtVertex> tracks);
0104
0105
0106
0107 void setFitQuality(double chiSquared, double numberDoF);
0108
0109
0110 void setFitQuality(std::pair<double, double> fitQuality);
0111
0112 private:
0113 Vector4 m_position = Vector4::Zero();
0114 Vector4 m_seedPosition = Vector4::Zero();
0115 SquareMatrix4 m_covariance = SquareMatrix4::Zero();
0116 std::vector<TrackAtVertex> m_tracksAtVertex;
0117 double m_chiSquared = 0.;
0118 double m_numberDoF = 0.;
0119 };
0120
0121 }