]> git.uio.no Git - u/mrichter/AliRoot.git/blame - ITS/AliITSVertexer.h
A new constructor that creates an AliExternalTrackParam object out of position, momen...
[u/mrichter/AliRoot.git] / ITS / AliITSVertexer.h
CommitLineData
c5f0f3c1 1#ifndef ALIITSVERTEXER_H
2#define ALIITSVERTEXER_H
3
2257f27e 4#include<AliVertexer.h>
c5f0f3c1 5
6///////////////////////////////////////////////////////////////////
7// //
2257f27e 8// Base class for primary vertex reconstruction for ITS //
c5f0f3c1 9// //
10///////////////////////////////////////////////////////////////////
11
8c42830a 12/* $Id$ */
13
41b19549 14class TString;
c5f0f3c1 15
2257f27e 16class AliITSVertexer : public AliVertexer {
c5f0f3c1 17
18 public:
19 // default constructor
20 AliITSVertexer();
27167524 21 virtual ~AliITSVertexer();
308c2f7c 22 virtual AliESDVertex *FindVertexForCurrentEvent(TTree *itsClusterTree)=0;
23 virtual void PrintStatus() const = 0;
24
25 void FindMultiplicity(TTree *itsClusterTree);
26 void SetFirstEvent(Int_t ev){fFirstEvent = ev;}
27 void SetLastEvent(Int_t ev){fLastEvent = ev;}
27167524 28 const Float_t GetPipeRadius()const {return fgkPipeRadius;}
308c2f7c 29 void SetLaddersOnLayer2(Int_t ladwid=4);
8c42830a 30 virtual void SetUseModule(Int_t imod, Bool_t optUse){
31 if(imod>=0 && imod<kNSPDMod) fUseModule[imod]=optUse;
32 }
33 virtual Bool_t IsModuleUsed(Int_t imod) const {
34 if(imod>=0 && imod<kNSPDMod) return fUseModule[imod];
35 else return 0;
36 }
37 enum{kNSPDMod=240};
308c2f7c 38
39 // Methods containing run-loaders, should be moved to some other class
40 void Init(TString filename);
41 void WriteCurrentVertex();
42 void FindVertices();
c5f0f3c1 43
c5f0f3c1 44 protected:
308c2f7c 45 static const Float_t fgkPipeRadius; // beam pipe radius (cm)
46 UShort_t *fLadders; // array with layer1-layer2 ladders correspondances
47 Int_t fLadOnLay2; // (2*fLadOnLay2+1)=number of layer2 ladders
48 // associated to a layer1 ladder
8c42830a 49 Bool_t fUseModule[kNSPDMod]; // flag for enabling/disabling SPD modules
308c2f7c 50
51 private:
41b19549 52 // copy constructor (NO copy allowed: the constructor is protected
53 // to avoid misuse)
54 AliITSVertexer(const AliITSVertexer& vtxr);
55 // assignment operator (NO assignment allowed)
56 AliITSVertexer& operator=(const AliITSVertexer& /* vtxr */);
57
308c2f7c 58 Int_t fFirstEvent; // First event to be processed by FindVertices
59 Int_t fLastEvent; // Last event to be processed by FindVertices
27167524 60
8c42830a 61 ClassDef(AliITSVertexer,6);
c5f0f3c1 62};
63
64#endif