]>
Commit | Line | Data |
---|---|---|
2257f27e | 1 | #ifndef ALIVERTEXER_H |
2 | #define ALIVERTEXER_H | |
3 | ||
2257f27e | 4 | /////////////////////////////////////////////////////////////////// |
5 | // // | |
6 | // Base class for primary vertex reconstruction // | |
7 | // // | |
8 | /////////////////////////////////////////////////////////////////// | |
9 | ||
308c2f7c | 10 | #include<TObject.h> |
11 | ||
12 | class TTree; | |
2257f27e | 13 | class AliESDVertex; |
308c2f7c | 14 | class AliMultiplicity; |
2257f27e | 15 | |
16 | ||
17 | class AliVertexer : public TObject { | |
18 | ||
19 | public: | |
20 | // default constructor | |
21 | AliVertexer(); | |
22 | ||
23 | // destructor | |
308c2f7c | 24 | virtual ~AliVertexer(); |
2257f27e | 25 | // computes the vertex for the current event |
308c2f7c | 26 | virtual AliESDVertex* FindVertexForCurrentEvent(TTree *clustersTree)=0; |
32e449be | 27 | // computes the vertex for each event and stores it on file |
308c2f7c | 28 | AliMultiplicity* GetMultiplicity() const {return fMult;} |
2257f27e | 29 | virtual void PrintStatus() const = 0; |
308c2f7c | 30 | void SetVtxStart(Double_t x,Double_t y,Double_t z) |
31 | { fNominalPos[0]=x; fNominalPos[1]=y; fNominalPos[2]=z; } | |
32 | void SetVtxStartSigma(Double_t sx,Double_t sy,Double_t sz) | |
33 | { fNominalCov[0]=sx*sx; fNominalCov[2]=sy*sy; fNominalCov[5]=sz*sz; | |
34 | fNominalCov[1]=0.; fNominalCov[3]=0.; fNominalCov[4]=0.; } | |
35 | void SetVtxStart(AliESDVertex *vtx); | |
36 | ||
37 | const Double_t* GetNominalPos() const {return fNominalPos;} | |
2257f27e | 38 | |
2257f27e | 39 | protected: |
308c2f7c | 40 | AliESDVertex *fCurrentVertex; //! pointer to the current vertex |
41 | AliMultiplicity *fMult; //! Multiplicity object | |
42 | ||
43 | private: | |
2257f27e | 44 | // copy constructor (NO copy allowed: the constructor is protected |
45 | // to avoid misuse) | |
46 | AliVertexer(const AliVertexer& vtxr); | |
47 | // assignment operator (NO assignment allowed) | |
48 | AliVertexer& operator=(const AliVertexer& /* vtxr */); | |
49 | ||
4b3f8cff | 50 | Double_t fNominalPos[3]; // initial knowledge on vertex position |
51 | Double_t fNominalCov[6]; // initial knowledge on vertex position | |
2257f27e | 52 | |
308c2f7c | 53 | ClassDef(AliVertexer,4); |
2257f27e | 54 | }; |
55 | ||
56 | #endif |