StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
VVertex.h
1 #ifndef VVertex_H
2 #define VVertex_H
3 /* Copyright(c) 1998-2008, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice */
5 
6 //-------------------------------------------------------------------------
7 // base class for ESD and AOD vertices
8 // Author: A. Dainese
9 //-------------------------------------------------------------------------
10 
11 #include <TNamed.h>
12 
13 class VVertex: public TNamed {
14 
15 public:
16  VVertex() { }
17  virtual ~VVertex() { }
18  VVertex(const VVertex& vVert);
19  VVertex& operator=(const VVertex& vVert);
20 
21  // vertex properties
22  virtual void GetXYZ(Double_t position[3]) const = 0;
23  virtual Double_t GetX() const = 0;
24  virtual Double_t GetY() const = 0;
25  virtual Double_t GetZ() const = 0;
26  virtual void GetCovarianceMatrix(Double_t covmatrix[6]) const = 0;
27 
28 
29  virtual Double_t GetChi2perNDF() const = 0;
30  virtual Double_t GetChi2() const = 0;
31  virtual Int_t GetNDF() const = 0;
32 
33  virtual Int_t GetNContributors() const = 0;
34  virtual void PrintIndices() const = 0;
35  virtual void Print(Option_t* option = "") const = 0;
36 
37  virtual void Clear(Option_t* option) {TNamed::Clear(option);}
38 
39 
40  ClassDef(VVertex,1) // base class for vertices
41 };
42 
43 #endif