]> git.uio.no Git - u/mrichter/AliRoot.git/blob - STEER/AliVertexer.h
Primary vertex reconstruction and standalone ITS tracking in the reconstruction chain
[u/mrichter/AliRoot.git] / STEER / AliVertexer.h
1 #ifndef ALIVERTEXER_H
2 #define ALIVERTEXER_H
3
4 #include<TObject.h>
5
6 ///////////////////////////////////////////////////////////////////
7 //                                                               //
8 // Base class for primary vertex reconstruction                  //
9 //                                                               //
10 ///////////////////////////////////////////////////////////////////
11
12 class TFile;
13 class TString;
14 class TTRee;
15 class AliESDVertex;
16
17
18 class AliVertexer : public TObject {
19
20  public:
21     // default constructor
22     AliVertexer();  
23  
24     // destructor
25     virtual ~AliVertexer(); 
26     // computes the vertex for the current event
27     virtual AliESDVertex* FindVertexForCurrentEvent(Int_t evnumb)=0; 
28     // computes the vetex for each event and stores it on file
29     virtual void FindVertices()= 0;
30     virtual void PrintStatus() const = 0;
31     virtual void SetDebug(Int_t debug = 0){fDebug = debug;}
32     virtual void SetFirstEvent(Int_t ev){fFirstEvent = ev;}
33     virtual void SetLastEvent(Int_t ev){fLastEvent = ev;}
34     virtual void SetUseV2Clusters(Bool_t choice) = 0;
35     virtual void WriteCurrentVertex() = 0;
36
37  
38  protected:
39     // copy constructor (NO copy allowed: the constructor is protected
40     // to avoid misuse)
41     AliVertexer(const AliVertexer& vtxr);
42     // assignment operator (NO assignment allowed)
43     AliVertexer& operator=(const AliVertexer& /* vtxr */);
44
45     AliESDVertex *fCurrentVertex;  //! pointer to the vertex of the current
46                                    //  event
47     Int_t fFirstEvent;          // First event to be processed by FindVertices
48     Int_t fLastEvent;           // Last event to be processed by FindVertices 
49     Int_t fDebug;               //! debug flag - verbose printing if >0
50
51   ClassDef(AliVertexer,1);
52 };
53
54 #endif