CMS 3D CMS Logo

Classes | Functions
Point3DBase.h File Reference
#include "DataFormats/GeometryVector/interface/PointTag.h"
#include "DataFormats/GeometryVector/interface/PV3DBase.h"
#include "DataFormats/GeometryVector/interface/Point2DBase.h"
#include "DataFormats/GeometryVector/interface/Vector3DBase.h"

Go to the source code of this file.

Classes

class  Point3DBase< T, FrameTag >
 

Functions

template<typename T , typename U , class Frame >
Point3DBase< typename PreciseFloatType< T, U >::Type, Frame > operator+ (const Point3DBase< T, Frame > &p, const Vector3DBase< U, Frame > &v)
 
template<typename T , typename U , class Frame >
Point3DBase< typename PreciseFloatType< T, U >::Type, Frame > operator+ (const Vector3DBase< T, Frame > &p, const Point3DBase< U, Frame > &v)
 
template<typename T , typename U , class Frame >
Point3DBase< typename PreciseFloatType< T, U >::Type, Frame > operator- (const Point3DBase< T, Frame > &p, const Vector3DBase< U, Frame > &v)
 
template<typename T , typename U , class Frame >
Vector3DBase< typename PreciseFloatType< T, U >::Type, Frame > operator- (const Point3DBase< T, Frame > &p1, const Point3DBase< U, Frame > &p2)
 

Function Documentation

◆ operator+() [1/2]

template<typename T , typename U , class Frame >
Point3DBase<typename PreciseFloatType<T, U>::Type, Frame> operator+ ( const Point3DBase< T, Frame > &  p,
const Vector3DBase< U, Frame > &  v 
)
inline

The sum of a Point and a Vector is a Point. The arguments must be defined in the same reference frame. The resulting point has the higher precision of the precisions of the two arguments.

Definition at line 83 of file Point3DBase.h.

84  {
86  return RT(p.basicVector() + v.basicVector());
87 }

References AlCaHLTBitMon_ParallelJobs::p, and findQualityFiles::v.

◆ operator+() [2/2]

template<typename T , typename U , class Frame >
Point3DBase<typename PreciseFloatType<T, U>::Type, Frame> operator+ ( const Vector3DBase< T, Frame > &  p,
const Point3DBase< U, Frame > &  v 
)
inline

Same as operator+(Point,Vector) (see above)

Definition at line 92 of file Point3DBase.h.

93  {
95  return RT(p.basicVector() + v.basicVector());
96 }

References AlCaHLTBitMon_ParallelJobs::p, and findQualityFiles::v.

◆ operator-() [1/2]

template<typename T , typename U , class Frame >
Point3DBase<typename PreciseFloatType<T, U>::Type, Frame> operator- ( const Point3DBase< T, Frame > &  p,
const Vector3DBase< U, Frame > &  v 
)
inline

The difference of a Point and a Vector is a Point. The arguments must be defined in the same reference frame. The resulting point has the higher precision of the precisions of the two arguments.

Definition at line 114 of file Point3DBase.h.

115  {
117  return RT(p.basicVector() - v.basicVector());
118 }

References AlCaHLTBitMon_ParallelJobs::p, and findQualityFiles::v.

◆ operator-() [2/2]

template<typename T , typename U , class Frame >
Vector3DBase<typename PreciseFloatType<T, U>::Type, Frame> operator- ( const Point3DBase< T, Frame > &  p1,
const Point3DBase< U, Frame > &  p2 
)
inline

The difference of two points is a vector. The arguments must be defined in the same reference frame. The resulting vector has the higher precision of the precisions of the two arguments.

Definition at line 103 of file Point3DBase.h.

104  {
106  return RT(p1.basicVector() - p2.basicVector());
107 }

References p1, and p2.

Vector3DBase
Definition: Vector3DBase.h:8
AlCaHLTBitMon_ParallelJobs.p
p
Definition: AlCaHLTBitMon_ParallelJobs.py:153
findQualityFiles.v
v
Definition: findQualityFiles.py:179
p2
double p2[4]
Definition: TauolaWrapper.h:90
Point3DBase
Definition: Point3DBase.h:10
p1
double p1[4]
Definition: TauolaWrapper.h:89