CMS 3D CMS Logo

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