Transition to NewIO
[u/mrichter/AliRoot.git] / ITS / AliITSVertexer.h
1 #ifndef ALIITSVERTEXER_H
2 #define ALIITSVERTEXER_H
3
4 #include <TTree.h>
5 #include <TFile.h>
6 #include <AliITSVertex.h>
7 #include <AliRun.h>
8
9
10 ///////////////////////////////////////////////////////////////////
11 //                                                               //
12 // Base class for primary vertex reconstruction                  //
13 //                                                               //
14 ///////////////////////////////////////////////////////////////////
15
16
17
18 class AliITSVertexer : public TObject {
19
20  public:
21     // default constructor
22     AliITSVertexer();   
23     // standard constructor     
24     AliITSVertexer(TString filename); 
25     // destructor
26     virtual ~AliITSVertexer(); 
27     // computes the vertex for the current event
28     virtual AliITSVertex* FindVertexForCurrentEvent(Int_t evnumb)=0; 
29     // computes the vetex for each event and stores it on file
30     virtual void FindVertices()= 0;
31     virtual void PrintStatus() const = 0;
32     virtual void SetDebug(Int_t debug = 0){fDebug = debug;}
33     virtual void SetFirstEvent(Int_t ev){fFirstEvent = ev;}
34     virtual void SetLastEvent(Int_t ev){fLastEvent = ev;}
35     virtual void WriteCurrentVertex();
36
37  
38  protected:
39     AliITSVertex *fCurrentVertex;  //! pointer to the vertex of the current
40                                    //  event
41     Int_t fFirstEvent;          // First event to be processed by FindVertices
42     Int_t fLastEvent;           // Last event to be processed by FindVertices 
43     Int_t fDebug;               //! debug flag - verbose printing if >0
44
45   ClassDef(AliITSVertexer,1);
46 };
47
48 #endif