ROOT logo
ROOT » GRAF3D » EVE » TEveVectorT<double>

class TEveVectorT<double>


This class is also known as (typedefs to this class)

TEveVector4T<double>::TP, TEveVectorD, TEveVectorT<Double_t>

Function Members (Methods)

TEveVectorT<double>(const Float_t* v)
TEveVectorT<double>(const Double_t* v)
TEveVectorT<double>(const TEveVectorT<double>&)
TEveVectorT<double>(double x, double y, double z)
const double*Arr() const
static TClass*Class()
doubleCosTheta() const
TEveVectorT<double>Cross(const TEveVectorT<double>& a) const
doubleDistance(const TEveVectorT<double>& b) const
doubleDot(const TEveVectorT<double>& a) const
voidDump() const
doubleEta() const
TClass*IsA() const
Bool_tIsZero() const
doubleMag() const
doubleMag2() const
TEveVectorT<double>&Mult(const TEveVectorT<double>& a, double af)
doubleNormalize(double length = 1)
const double*operator const double*() const
double*operator double*()
TEveVectorT<double>&operator*=(double s)
TEveVectorT<double>&operator+=(const TEveVectorT<double>& v)
TEveVectorT<double>&operator-=(const TEveVectorT<double>& v)
TEveVectorT<double>&operator=(const TEveVectorT<double>&)
doubleoperator[](Int_t idx) const
double&operator[](Int_t idx)
TEveVectorT<double>Orthogonal() const
voidOrthoNormBase(TEveVectorT<double>& a, TEveVectorT<double>& b) const
doublePerp() const
doublePerp2() const
doublePhi() const
doubleR() const
voidSet(const Float_t* v)
voidSet(const Double_t* v)
voidSet(const TVector3& v)
voidSet(double x, double y, double z)
voidShowMembers(TMemberInspector& insp)
doubleSquareDistance(const TEveVectorT<double>& b) const
voidStreamer(TBuffer& b)
voidStreamerNVirtual(TBuffer& b)
TEveVectorT<double>&Sub(const TEveVectorT<double>& a, const TEveVectorT<double>& b)
doubleTheta() const

Data Members

doublefZComponents of the vector.

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

template<typename TT> void TEveVectorT<TT> Dump() const
 Dump to stdout as "(x, y, z)\n".
template<typename TT> void TEveVectorT<TT> Set(const TVector3& v)
 Set from TVector3.
template<typename TT> TT TEveVectorT<TT> Eta() const
 Calculate eta of the point, pretending it's a momentum vector.
template<typename TT> TT TEveVectorT<TT> Normalize(double length = 1)
 Normalize the vector to length if current length is non-zero.
 Returns the old magnitude.
template<typename TT> TEveVectorT<TT> TEveVectorT<TT> Orthogonal() const
 Returns an orthogonal vector (not normalized).
template<typename TT> void TEveVectorT<TT> OrthoNormBase(TEveVectorT<double>& a, TEveVectorT<double>& b) const
 Set vectors a and b to be normal to this and among themselves,
 both of length 1.
TT TEveVectorT<TT> Phi() const
TT TEveVectorT<TT> Theta() const
TT TEveVectorT<TT> CosTheta() const
TT TEveVectorT<TT> Distance(const TEveVectorT<double>& b) const
TT TEveVectorT<TT> SquareDistance(const TEveVectorT<double>& b) const
TT TEveVectorT<TT> Dot(const TEveVectorT<double>& a) const
TEveVectorT<TT> TEveVectorT<TT> Cross(const TEveVectorT<double>& a) const
TEveVectorT<TT>& TEveVectorT<TT> Sub(const TEveVectorT<double>& a, const TEveVectorT<double>& b)
TEveVectorT<TT>& TEveVectorT<TT> Mult(const TEveVectorT<double>& a, double af)
const TT* Arr() const
{ return &fX; }
TT* Arr()
{ return &fX; }
TEveVectorT& operator*=(double s)
{ fX *= s; fY *= s; fZ *= s; return *this; }
TEveVectorT& operator+=(const TEveVectorT<double>& v)
{ fX += v.fX; fY += v.fY; fZ += v.fZ; return *this; }
TEveVectorT& operator-=(const TEveVectorT<double>& v)
{ fX -= v.fX; fY -= v.fY; fZ -= v.fZ; return *this; }
void Set(const Float_t* v)
{ fX = v[0]; fY = v[1]; fZ = v[2]; }
void Set(const Double_t* v)
{ fX = v[0]; fY = v[1]; fZ = v[2]; }
void Set(double x, double y, double z)
{ fX = x; fY = y; fZ = z; }
void NegateXYZ()
{ fX = - fX; fY = -fY; fZ = -fZ; }
TT Mag2() const
{ return fX*fX + fY*fY + fZ*fZ; }
TT Mag() const
{ return TMath::Sqrt(Mag2()); }
TT Perp2() const
{ return fX*fX + fY*fY; }
TT Perp() const
{ return TMath::Sqrt(Perp2()); }
TT R() const
{ return Perp(); }
Bool_t IsZero() const
{ return fX == 0 && fY == 0 && fZ == 0; }
TT& operator[](Int_t idx)
{ return (&fX)[idx]; }
TT operator[](Int_t idx) const
{ return (&fX)[idx]; }