1 #ifndef ALIITSVERTEXER_H
2 #define ALIITSVERTEXER_H
4 #include<AliVertexer.h>
5 #include "AliITSDetTypeRec.h"
7 ///////////////////////////////////////////////////////////////////
9 // Base class for primary vertex reconstruction for ITS //
11 ///////////////////////////////////////////////////////////////////
17 class AliITSVertexer : public AliVertexer {
20 // default constructor
22 virtual ~AliITSVertexer();
23 virtual AliESDVertex *FindVertexForCurrentEvent(TTree *itsClusterTree)=0;
24 virtual void PrintStatus() const = 0;
26 void FindMultiplicity(TTree *itsClusterTree);
27 void SetFirstEvent(Int_t ev){fFirstEvent = ev;}
28 void SetLastEvent(Int_t ev){fLastEvent = ev;}
29 static Float_t GetPipeRadius() {return fgkPipeRadius;}
30 void SetLaddersOnLayer2(Int_t ladwid=4);
31 virtual void SetUseModule(Int_t imod, Bool_t optUse){
32 if(imod>=0 && imod<kNSPDMod) fUseModule[imod]=optUse;
34 virtual Bool_t IsModuleUsed(Int_t imod) const {
35 if(imod>=0 && imod<kNSPDMod) return fUseModule[imod];
39 const AliITSDetTypeRec *GetDetTypeRec() const {return fDetTypeRec;}
40 virtual void SetDetTypeRec(const AliITSDetTypeRec *ptr){fDetTypeRec = ptr;}
43 // Methods containing run-loaders, should be moved to some other class
44 void Init(TString filename);
45 void WriteCurrentVertex();
49 static const Float_t fgkPipeRadius; // beam pipe radius (cm)
50 UShort_t *fLadders; // array with layer1-layer2 ladders correspondances
51 Int_t fLadOnLay2; // (2*fLadOnLay2+1)=number of layer2 ladders
52 // associated to a layer1 ladder
53 Bool_t fUseModule[kNSPDMod]; // flag for enabling/disabling SPD modules
56 // copy constructor (NO copy allowed: the constructor is protected
58 AliITSVertexer(const AliITSVertexer& vtxr);
59 // assignment operator (NO assignment allowed)
60 AliITSVertexer& operator=(const AliITSVertexer& /* vtxr */);
62 Int_t fFirstEvent; // First event to be processed by FindVertices
63 Int_t fLastEvent; // Last event to be processed by FindVertices
64 const AliITSDetTypeRec *fDetTypeRec; //! pointer to DetTypeRec
66 ClassDef(AliITSVertexer,7);