CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
FastCircle.h
Go to the documentation of this file.
1 #ifndef TR_FastCircle_H_
2 #define TR_FastCircle_H_
5 #include <vector>
6 
33 class FastCircle {
34 
35 public:
36 
37  FastCircle(const GlobalPoint& outerHit,
38  const GlobalPoint& middleHit,
39  const GlobalPoint& aVertex);
40 
41  FastCircle(const GlobalPoint& outerHit,
42  const GlobalPoint& middleHit,
43  const GlobalPoint& aVertex,
44  double norm);
45 
47 
48  // all returned values have dimensions of cm
49  // parameters of the circle (circle is valid)
50  double x0() const {return theX0;}
51 
52  double y0() const {return theY0;}
53 
54  double rho() const {return theRho;}
55 
56  bool isValid() const {return theValid;}
57 
58  // parameters of the straight line
59  // (if circle is invalid only these are available)
60  double n1() const {return theN1;}
61 
62  double n2() const {return theN2;}
63 
64  double c() const {return theC;}
65 
66 private:
67 
71  double theNorm;
72 
73  double theX0;
74  double theY0;
75  double theRho;
76 
77  double theN1;
78  double theN2;
79  double theC;
80 
81  bool theValid;
82 
84  AlgebraicVector3 transform(const GlobalPoint& aPoint) const;
85 
86 };
87 
88 #endif //TR_Circle_H_
double theNorm
Definition: FastCircle.h:71
double x0() const
Definition: FastCircle.h:50
void createCircleParameters()
Definition: FastCircle.cc:42
FastCircle(const GlobalPoint &outerHit, const GlobalPoint &middleHit, const GlobalPoint &aVertex)
Definition: FastCircle.cc:3
double n2() const
Definition: FastCircle.h:62
double rho() const
Definition: FastCircle.h:54
bool theValid
Definition: FastCircle.h:81
AlgebraicVector3 transform(const GlobalPoint &aPoint) const
Definition: FastCircle.cc:86
bool isValid() const
Definition: FastCircle.h:56
double theY0
Definition: FastCircle.h:74
double theC
Definition: FastCircle.h:79
double n1() const
Definition: FastCircle.h:60
double c() const
Definition: FastCircle.h:64
tuple norm
Definition: lumiNorm.py:78
double theN2
Definition: FastCircle.h:78
ROOT::Math::SVector< double, 3 > AlgebraicVector3
double theX0
Definition: FastCircle.h:73
GlobalPoint theInnerPoint
Definition: FastCircle.h:69
double theRho
Definition: FastCircle.h:75
GlobalPoint theOuterPoint
Definition: FastCircle.h:68
double y0() const
Definition: FastCircle.h:52
GlobalPoint theVertexPoint
Definition: FastCircle.h:70
double theN1
Definition: FastCircle.h:77