a4ea0ef1af168aed5a748972f4cb1ae34f5058a4
[u/mrichter/AliRoot.git] / ITS / ITSrec / AliITSReconstructor.h
1 #ifndef ALIITSRECONSTRUCTOR_H
2 #define ALIITSRECONSTRUCTOR_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 /* $Id$ */
7 ///////////////////////////////////////////////////////////////////////////////
8 //                                                                           //
9 // class for ITS reconstruction                                              //
10 //                                                                           //
11 ///////////////////////////////////////////////////////////////////////////////
12
13 #include "AliReconstructor.h"
14 #include "AliITSRecoParam.h"
15 #include "AliITSDetTypeRec.h"
16 #include "AliITSRecPointContainer.h"
17 class AliESDpid;
18 class AliITSgeom;
19 class AliTracker;
20 class AliTrackleter;
21 class AliITStrackerMI;
22
23 class AliITSReconstructor: public AliReconstructor {
24 public:
25   AliITSReconstructor();
26   virtual ~AliITSReconstructor();
27   virtual void         Init();
28   virtual void         GetPidSettings(AliESDpid *ESDpid);
29   virtual void         Reconstruct(AliRawReader* rawReader, TTree* clustersTree) const;
30   virtual void         Reconstruct(TTree* digitsTree, TTree* clustersTree) const;
31
32   virtual AliTracker*  CreateTracker() const;
33   virtual AliVertexer* CreateVertexer() const;
34   virtual AliTracker*  CreateTrackleter() const;
35   virtual AliTrackleter* CreateMultFinder() const;
36
37   virtual void         FillESD(TTree* /*digitsTree*/, TTree* clustersTree, 
38                                AliESDEvent* /* esd */) const; 
39   virtual void         FillESD(AliRawReader* /*rawReader*/, TTree* clustersTree, 
40                                AliESDEvent* esd) const
41   {FillESD((TTree*)NULL, clustersTree, esd);}
42   virtual void Terminate() const {AliITSRecPointContainer::Destroy();}
43
44   static const AliITSRecoParam* GetRecoParam() { return dynamic_cast<const AliITSRecoParam*>(AliReconstructor::GetRecoParam(0)); }
45
46 private:
47   AliITSReconstructor(const AliITSReconstructor &); //Not implemented
48   AliITSReconstructor& operator=(const AliITSReconstructor &); //Not implemented
49
50   //data
51   AliITSDetTypeRec       *fDetTypeRec;  // reconstructor
52
53   ClassDef(AliITSReconstructor, 6)   // class for the ITS reconstruction
54 };
55
56 #endif