CMS 3D CMS Logo

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_
FastCircle::theInnerPoint
GlobalPoint theInnerPoint
Definition: FastCircle.h:67
Visibility.h
FastCircle::theN2
double theN2
Definition: FastCircle.h:76
FastCircle::theRho
double theRho
Definition: FastCircle.h:73
FastCircle::theX0
double theX0
Definition: FastCircle.h:71
FastCircle::theOuterPoint
GlobalPoint theOuterPoint
Definition: FastCircle.h:66
FastCircle::y0
double y0() const
Definition: FastCircle.h:45
FastCircle::n1
double n1() const
Definition: FastCircle.h:55
FastCircle::outerPoint
GlobalPoint const & outerPoint() const
Definition: FastCircle.h:61
FastCircle::isLine
bool isLine() const
Definition: FastCircle.h:51
FastCircle::theVertexPoint
GlobalPoint theVertexPoint
Definition: FastCircle.h:68
FastCircle::rho
double rho() const
Definition: FastCircle.h:47
FastCircle::theIsLine
bool theIsLine
Definition: FastCircle.h:80
FastCircle::theN1
double theN1
Definition: FastCircle.h:75
Point3DBase< float, GlobalTag >
dso_hidden
#define dso_hidden
Definition: Visibility.h:12
FastCircle::x0
double x0() const
Definition: FastCircle.h:43
FastCircle::theNorm
double theNorm
Definition: FastCircle.h:69
FastCircle::vertexPoint
GlobalPoint const & vertexPoint() const
Definition: FastCircle.h:63
FastCircle::~FastCircle
~FastCircle()
Definition: FastCircle.h:39
FastCircle::c
double c() const
Definition: FastCircle.h:59
FastCircle
Definition: FastCircle.h:33
FastCircle::innerPoint
GlobalPoint const & innerPoint() const
Definition: FastCircle.h:62
FastCircle::createCircleParameters
void createCircleParameters()
Definition: FastCircle.cc:55
FastCircle::FastCircle
FastCircle(const GlobalPoint &outerHit, const GlobalPoint &middleHit, const GlobalPoint &aVertex)
Definition: FastCircle.cc:4
FastCircle::theValid
bool theValid
Definition: FastCircle.h:79
FastCircle::isValid
bool isValid() const
Definition: FastCircle.h:49
FastCircle::theC
double theC
Definition: FastCircle.h:77
FastCircle::n2
double n2() const
Definition: FastCircle.h:57
GlobalPoint.h
AlgebraicROOTObjects.h
FastCircle::theY0
double theY0
Definition: FastCircle.h:72