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