ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/IPHCalignment2/TrackingTools/PatternTools/interface/TwoTrackMinimumDistanceLineLine.h
Revision: 1.1
Committed: Fri Nov 25 16:38:24 2011 UTC (13 years, 5 months ago) by econte
Content type: text/plain
Branch: MAIN
CVS Tags: TBD2011, TBD_2011, HEAD
Log Message:
new IPHC alignment

File Contents

# Content
1 /* $Id: TwoTrackMinimumDistanceLineLine.h,v 1.2 2008/05/02 19:52:24 burkett Exp $ */
2 #ifndef _Tracker_TwoTrackMinimumDistanceLineLine_H_
3 #define _Tracker_TwoTrackMinimumDistanceLineLine_H_
4
5 #include "DataFormats/GeometryVector/interface/GlobalPoint.h"
6 #include <string>
7 #include <sstream>
8 #include <utility>
9
10 /** \class TwoTrackMinimumDistanceLineLine
11 * This is a helper class for TwoTrackMinimumDistance.
12 * No user should need direct access to this class.
13 * Exact solution.
14 */
15
16 class GlobalTrajectoryParameters;
17
18 class TwoTrackMinimumDistanceLineLine {
19
20 public:
21 /**
22 * Calculates the point of closest approach on the two tracks.
23 * \return false in case of success<br>
24 * true in case of failure. Possible failures:<br>
25 * - Either of the Trajectories are charged
26 * - Either of the Trajectories is of zero momentum
27 * - Trajectories are parallel
28 */
29
30 bool calculate( const GlobalTrajectoryParameters &,
31 const GlobalTrajectoryParameters &); // retval=true? error occured.
32
33 std::pair <GlobalPoint, GlobalPoint> points() const;
34 std::pair <double, double> pathLength() const;
35
36 double firstAngle() const {return phiG;}
37 double secondAngle() const {return phiH;}
38 private:
39 double phiH, phiG;
40 double pathG, pathH;
41 GlobalPoint gPos, hPos;
42 };
43 #endif