CMS 3D CMS Logo

BasicSingleVertexState.h
Go to the documentation of this file.
1 #ifndef BasicSingleVertexState_H
2 #define BasicSingleVertexState_H
3 
5 
6 //#include "CommonReco/CommonVertex/interface/RefCountedVertexSeed.h"
7 
13 public:
17  BasicSingleVertexState(const GlobalPoint& pos, const GlobalError& posErr, const double& weightInMix = 1.0);
18  BasicSingleVertexState(const GlobalPoint& pos, const GlobalWeight& posWeight, const double& weightInMix = 1.0);
20  const GlobalWeight& posWeight,
21  const double& weightInMix = 1.0);
22 
23  // constructors with time (ignores off-diagonals in fit)
25  const GlobalError& posErr,
26  const double time,
27  const double timeError,
28  const double& weightInMix = 1.0);
30  const GlobalWeight& posWeight,
31  const double time,
32  const double timeWeight,
33  const double& weightInMix = 1.0);
35  const GlobalWeight& posWeight,
36  const double weightTimesTime,
37  const double timeWeight,
38  const double& weightInMix = 1.0);
39 
40  // constructors with time, full cov
42  const double time,
43  const GlobalError& posTimeErr,
44  const double& weightInMix = 1.0);
46  const double time,
47  const GlobalWeight& posTimeWeight,
48  const double& weightInMix = 1.0);
50  const GlobalWeight& posTimeWeight,
51  const double& weightInMix = 1.0);
52 
55  pointer clone() const override { return build<BasicSingleVertexState>(*this); }
56 
57  GlobalPoint position() const override;
58  GlobalError error() const override;
59  GlobalError error4D() const override;
60  double time() const override;
61  double timeError() const override;
62  GlobalWeight weight() const override;
63  GlobalWeight weight4D() const override;
64  AlgebraicVector3 weightTimesPosition() const override;
65  AlgebraicVector4 weightTimesPosition4D() const override;
66  double weightInMixture() const override;
67 
71  bool isValid() const override { return valid; }
72  bool is4D() const override { return vertexIs4D; }
73 
74 private:
75  void computePosition() const;
76  void computeError() const;
77  void computeWeight() const;
78  void computeWeightTimesPos() const;
79 
81  mutable double theTime;
82 
85 
88 
89  mutable bool thePosAvailable;
90  mutable bool theTimeAvailable;
91  mutable bool theErrAvailable;
92  mutable bool theWeightAvailable;
94 
95  bool valid;
96  bool vertexIs4D;
97 };
98 
99 #endif
BasicSingleVertexState::vertexIs4D
bool vertexIs4D
Definition: BasicSingleVertexState.h:96
AlgebraicVector3
ROOT::Math::SVector< double, 3 > AlgebraicVector3
Definition: AlgebraicROOTObjects.h:12
BasicSingleVertexState::theErr
GlobalError theErr
Definition: BasicSingleVertexState.h:83
BasicSingleVertexState::weightTimesPosition4D
AlgebraicVector4 weightTimesPosition4D() const override
Definition: BasicSingleVertexState.cc:261
BasicSingleVertexState::timeError
double timeError() const override
Definition: BasicSingleVertexState.cc:229
BasicSingleVertexState::theWeightAvailable
bool theWeightAvailable
Definition: BasicSingleVertexState.h:92
pos
Definition: PixelAliasList.h:18
BasicVertexState::pointer
Proxy::pointer pointer
Definition: BasicVertexState.h:20
BasicSingleVertexState::error4D
GlobalError error4D() const override
Definition: BasicSingleVertexState.cc:213
BasicSingleVertexState::weightTimesPosition
AlgebraicVector3 weightTimesPosition() const override
Definition: BasicSingleVertexState.cc:253
BasicSingleVertexState::theWeightTimesPosAvailable
bool theWeightTimesPosAvailable
Definition: BasicSingleVertexState.h:93
BasicSingleVertexState::BasicSingleVertexState
BasicSingleVertexState()
Definition: BasicSingleVertexState.cc:9
BasicSingleVertexState::weightInMixture
double weightInMixture() const override
Definition: BasicSingleVertexState.cc:269
BasicVertexState.h
BasicSingleVertexState::weight
GlobalWeight weight() const override
Definition: BasicSingleVertexState.cc:237
BasicSingleVertexState::theErrAvailable
bool theErrAvailable
Definition: BasicSingleVertexState.h:91
BasicSingleVertexState::theWeightTimesPos
AlgebraicVector4 theWeightTimesPos
Definition: BasicSingleVertexState.h:86
BasicSingleVertexState::theWeightInMix
double theWeightInMix
Definition: BasicSingleVertexState.h:87
BasicSingleVertexState::computeWeightTimesPos
void computeWeightTimesPos() const
Definition: BasicSingleVertexState.cc:322
BasicSingleVertexState::weight4D
GlobalWeight weight4D() const override
Definition: BasicSingleVertexState.cc:245
BasicVertexState
Definition: BasicVertexState.h:17
BasicSingleVertexState::computeError
void computeError() const
Definition: BasicSingleVertexState.cc:290
Point3DBase< float, GlobalTag >
BasicSingleVertexState::theTimeAvailable
bool theTimeAvailable
Definition: BasicSingleVertexState.h:90
BasicSingleVertexState::computePosition
void computePosition() const
Definition: BasicSingleVertexState.cc:280
BasicSingleVertexState::theTime
double theTime
Definition: BasicSingleVertexState.h:81
GlobalErrorBase< double, ErrorMatrixTag >
BasicSingleVertexState::is4D
bool is4D() const override
Definition: BasicSingleVertexState.h:72
BasicSingleVertexState::valid
bool valid
Definition: BasicSingleVertexState.h:95
BasicSingleVertexState::time
double time() const override
Definition: BasicSingleVertexState.cc:221
AlgebraicVector4
ROOT::Math::SVector< double, 4 > AlgebraicVector4
Definition: AlgebraicROOTObjects.h:13
BasicSingleVertexState::computeWeight
void computeWeight() const
Definition: BasicSingleVertexState.cc:306
BasicSingleVertexState
Definition: BasicSingleVertexState.h:12
BasicSingleVertexState::theWeight
GlobalWeight theWeight
Definition: BasicSingleVertexState.h:84
BasicSingleVertexState::thePosAvailable
bool thePosAvailable
Definition: BasicSingleVertexState.h:89
BasicSingleVertexState::thePos
GlobalPoint thePos
Definition: BasicSingleVertexState.h:80
BasicSingleVertexState::isValid
bool isValid() const override
Definition: BasicSingleVertexState.h:71
BasicSingleVertexState::position
GlobalPoint position() const override
Definition: BasicSingleVertexState.cc:197
BasicSingleVertexState::clone
pointer clone() const override
Definition: BasicSingleVertexState.h:55
BasicSingleVertexState::error
GlobalError error() const override
Definition: BasicSingleVertexState.cc:205