CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
StraightLinePlaneCrossing.h
Go to the documentation of this file.
1 #ifndef StraightLinePlaneCrossing_H_
2 #define StraightLinePlaneCrossing_H_
3 
6 
7 #include <utility>
8 
9 class Plane;
10 
15 public:
23 
24 public:
28  const DirectionType& momentum,
29  const PropagationDirection propDir = alongMomentum);
30  // destructor
32 
36  std::pair<bool,double> pathLength (const Plane& plane) const;
37 
40  PositionType position (double s) const {return PositionType(theX0+s*theP0);}
41 
44  std::pair<bool,PositionType> position(const Plane& plane) const;
45 
46 private:
47  //
48  // single precision vectors sufficient for internal use
49  //
50 // typedef Basic3DVector<double> PositionTypeDouble;
51 // typedef Basic3DVector<double> DirectionTypeDouble;
54 
58 };
59 
60 #endif
Basic3DVector< float > PositionType
const PositionTypeDouble theX0
const PropagationDirection thePropDir
StraightLinePlaneCrossing(const PositionType &point, const DirectionType &momentum, const PropagationDirection propDir=alongMomentum)
PropagationDirection
Definition: Plane.h:17
Basic3DVector< float > PositionTypeDouble
Basic3DVector< float > DirectionType
Basic3DVector< float > DirectionTypeDouble
std::pair< bool, double > pathLength(const Plane &plane) const
PositionType position(double s) const
const PositionTypeDouble theP0
*vegas h *****************************************************used in the default bin number in original ***version of VEGAS is ***a higher bin number might help to derive a more precise ***grade subtle point
Definition: invegas.h:5