CMS 3D CMS Logo

CMSSW_4_4_3_patch1/src/Alignment/CocoaModel/interface/ALILine.h

Go to the documentation of this file.
00001 //  COCOA class header file
00002 //Id:  ALILine.h
00003 //CAT: Model
00004 //
00005 //   Base class for entries 
00006 // 
00007 //   History: v1.0 
00008 //   Pedro Arce
00009 
00010 #ifndef _ALILINE_HH
00011 #define _ALILINE_HH
00012 #include <iostream>
00013 #include <CLHEP/Vector/ThreeVector.h>
00014 class ALIPlane;
00015 
00016 class ALILine {
00017 
00018 public:
00019   ALILine(){ };  
00020   ~ALILine(){ };  
00021   ALILine( const CLHEP::Hep3Vector& point, const CLHEP::Hep3Vector& direction );  
00022 // Next 1 line was added with 22 Mar 2001 
00023 //  CLHEP::Hep3Vector ALILine( const ALILine& l2, bool notParallel = 0);
00024 //0
00025   CLHEP::Hep3Vector intersect( const ALILine& l2, bool notParallel = 0); 
00026   CLHEP::Hep3Vector intersect( const ALIPlane& plane, bool notParallel = 1);
00027   const CLHEP::Hep3Vector& pt() const {return _point;};
00028   const CLHEP::Hep3Vector& vec() const {return _direction;};
00029 
00030   friend std::ostream& operator << (std::ostream&, const ALILine& li);
00031 
00032 private:
00033   CLHEP::Hep3Vector _point;
00034   CLHEP::Hep3Vector _direction;
00035 
00036 };
00037 
00038 #endif