CMS 3D CMS Logo

BasicVertexState.h
Go to the documentation of this file.
1 #ifndef BasicVertexState_H
2 #define BasicVertexState_H
3 
5 
9 
10 #include <vector>
11 
12 class VertexState;
13 
18 public:
21 
22 public:
23  virtual ~BasicVertexState() {}
24 
25  template <typename T, typename... Args>
26  static std::shared_ptr<BasicVertexState> build(Args&&... args) {
27  return std::make_shared<T>(std::forward<Args>(args)...);
28  }
29 
30  virtual pointer clone() const = 0;
31 
34  virtual GlobalPoint position() const = 0;
35  virtual GlobalError error() const = 0;
36  virtual GlobalError error4D() const = 0;
37  virtual double time() const = 0;
38  virtual double timeError() const = 0;
39  virtual GlobalWeight weight() const = 0;
40  virtual GlobalWeight weight4D() const = 0;
41  virtual AlgebraicVector3 weightTimesPosition() const = 0;
42  virtual AlgebraicVector4 weightTimesPosition4D() const = 0;
43  virtual double weightInMixture() const = 0;
44  virtual std::vector<VertexState> components() const;
45  virtual bool isValid() const = 0;
46  virtual bool is4D() const = 0;
47 };
48 
49 #endif
virtual AlgebraicVector4 weightTimesPosition4D() const =0
virtual GlobalError error() const =0
virtual GlobalWeight weight() const =0
std::shared_ptr< T > pointer
Definition: ProxyBase11.h:25
virtual double time() const =0
Proxy::pointer pointer
virtual double weightInMixture() const =0
static std::shared_ptr< BasicVertexState > build(Args &&...args)
virtual GlobalPoint position() const =0
virtual double timeError() const =0
virtual AlgebraicVector3 weightTimesPosition() const =0
ROOT::Math::SVector< double, 4 > AlgebraicVector4
virtual ~BasicVertexState()
virtual GlobalError error4D() const =0
virtual std::vector< VertexState > components() const
virtual GlobalWeight weight4D() const =0
virtual pointer clone() const =0
ROOT::Math::SVector< double, 3 > AlgebraicVector3
virtual bool isValid() const =0
long double T
virtual bool is4D() const =0