Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 11:56:00

0001 //  COCOA class header file

0002 //Id:  ALILine.h

0003 //CAT: Model

0004 //

0005 //   Base class for entries

0006 //

0007 //   History: v1.0

0008 //   Pedro Arce

0009 
0010 #ifndef _ALILINE_HH
0011 #define _ALILINE_HH
0012 #include <iostream>
0013 #include <CLHEP/Vector/ThreeVector.h>
0014 class ALIPlane;
0015 
0016 class ALILine {
0017 public:
0018   ALILine(){};
0019   ~ALILine(){};
0020   ALILine(const CLHEP::Hep3Vector& point, const CLHEP::Hep3Vector& direction);
0021   // Next 1 line was added with 22 Mar 2001

0022   //  CLHEP::Hep3Vector ALILine( const ALILine& l2, bool notParallel = 0);

0023   //0

0024   CLHEP::Hep3Vector intersect(const ALILine& l2, bool notParallel = false);
0025   CLHEP::Hep3Vector intersect(const ALIPlane& plane, bool notParallel = true);
0026   const CLHEP::Hep3Vector& pt() const { return _point; };
0027   const CLHEP::Hep3Vector& vec() const { return _direction; };
0028 
0029   friend std::ostream& operator<<(std::ostream&, const ALILine& li);
0030 
0031 private:
0032   CLHEP::Hep3Vector _point;
0033   CLHEP::Hep3Vector _direction;
0034 };
0035 
0036 #endif