ROOT logo
//*-- AUTHOR : Ilse Koenig
//*-- Modified : 16/06/99

//_HADES_CLASS_DESCRIPTION 
///////////////////////////////////////////////////////////////////////////////
//
// HGeomVector
//
// This class defines a vector with 3 Double_t components.
// Instantiations of this class are e.g geometry points and
// translation vectors in the geometry transformations.
//
// All functions and operators are defined inline.
//
// Constructors:
//   HGeomVector(Double_t dx=0,Double_t dy=0,Double_t dz=0)
//   HGeomVector(const HGeomVector& v)
//
// Access to the components:
//   void setVector(const Double_t* a);
//   void setX(const Double_t a)
//   void setY(const Double_t a)
//   void setZ(const Double_t a)
//   Double_t getX() const
//   Double_t getY() const
//   Double_t getZ() const
//   Double_t operator() (const Int_t i) const;
//
// Check for the size of all components: 
//   Bool_t operator < (const Double_t a)
//   Bool_t operator <= (const Double_t a)
//   Bool_t operator > (const Double_t a)
//   Bool_t operator >= (const Double_t a)
//
// Check for equality/inequality;
//   Bool_t operator == (const HGeomVector& v) const
//   Bool_t operator != (const HGeomVector& v) const
//
// Addition/Substraction of a vector;
//   HGeomVector& operator += (const Double_t a)
//   HGeomVector& operator -= (const Double_t a)
//
// Addition/Substraction of two vectors;
//   HGeomVector operator + (const HGeomVector& v) const
//   HGeomVector operator - (const HGeomVector& v) const
//
// Multiplication/Division of each components with/by a factor
//   HGeomVector& operator *= (const Double_t a)
//   HGeomVector& operator /= (const Double_t a)
//
//
// HGeomVector operator - () const
//      changes the sign of all components
//
// HGeomVector& operator = (const HGeomVector& v)
//      assignment
//
// HGeomVector& abs()
//      builds absolute value of each components  
//
// Double_t scalarProduct(const HGeomVector& v) const;
//      returns the scalar product
//
// HGeomVector vectorProduct(const HGeomVector& v) const;
//      returns the vector product
//
// Double_t length() const {return sqrt(x*x+y*y+z*z);}
//      returns the length
//
//  void clear()
//      sets all components to 0.0
//
// void print()
//      prints the components
//
// void round(Int_t n)
//      rounds all components to a precision with n digits
//
// friend ostream& operator << (ostream& put,const HGeomVector& v);
//      output to stream
//
// friend istream& operator >> (istream& get,HGeomVector& v);
//      input from stream
//
///////////////////////////////////////////////////////////////////////////////

#include "hgeomvector.h"

ClassImp(HGeomVector)
 hgeomvector.cc:1
 hgeomvector.cc:2
 hgeomvector.cc:3
 hgeomvector.cc:4
 hgeomvector.cc:5
 hgeomvector.cc:6
 hgeomvector.cc:7
 hgeomvector.cc:8
 hgeomvector.cc:9
 hgeomvector.cc:10
 hgeomvector.cc:11
 hgeomvector.cc:12
 hgeomvector.cc:13
 hgeomvector.cc:14
 hgeomvector.cc:15
 hgeomvector.cc:16
 hgeomvector.cc:17
 hgeomvector.cc:18
 hgeomvector.cc:19
 hgeomvector.cc:20
 hgeomvector.cc:21
 hgeomvector.cc:22
 hgeomvector.cc:23
 hgeomvector.cc:24
 hgeomvector.cc:25
 hgeomvector.cc:26
 hgeomvector.cc:27
 hgeomvector.cc:28
 hgeomvector.cc:29
 hgeomvector.cc:30
 hgeomvector.cc:31
 hgeomvector.cc:32
 hgeomvector.cc:33
 hgeomvector.cc:34
 hgeomvector.cc:35
 hgeomvector.cc:36
 hgeomvector.cc:37
 hgeomvector.cc:38
 hgeomvector.cc:39
 hgeomvector.cc:40
 hgeomvector.cc:41
 hgeomvector.cc:42
 hgeomvector.cc:43
 hgeomvector.cc:44
 hgeomvector.cc:45
 hgeomvector.cc:46
 hgeomvector.cc:47
 hgeomvector.cc:48
 hgeomvector.cc:49
 hgeomvector.cc:50
 hgeomvector.cc:51
 hgeomvector.cc:52
 hgeomvector.cc:53
 hgeomvector.cc:54
 hgeomvector.cc:55
 hgeomvector.cc:56
 hgeomvector.cc:57
 hgeomvector.cc:58
 hgeomvector.cc:59
 hgeomvector.cc:60
 hgeomvector.cc:61
 hgeomvector.cc:62
 hgeomvector.cc:63
 hgeomvector.cc:64
 hgeomvector.cc:65
 hgeomvector.cc:66
 hgeomvector.cc:67
 hgeomvector.cc:68
 hgeomvector.cc:69
 hgeomvector.cc:70
 hgeomvector.cc:71
 hgeomvector.cc:72
 hgeomvector.cc:73
 hgeomvector.cc:74
 hgeomvector.cc:75
 hgeomvector.cc:76
 hgeomvector.cc:77
 hgeomvector.cc:78
 hgeomvector.cc:79
 hgeomvector.cc:80
 hgeomvector.cc:81
 hgeomvector.cc:82
 hgeomvector.cc:83
 hgeomvector.cc:84
 hgeomvector.cc:85
 hgeomvector.cc:86
 hgeomvector.cc:87
 hgeomvector.cc:88
 hgeomvector.cc:89