]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - ITS/AliITSReconstructor.h
bug fix
[u/mrichter/AliRoot.git] / ITS / AliITSReconstructor.h
index 4f1bce757b2af268966a13d3825407465944762b..7fe058591fdd810e164f3394d8f50fb7607791fb 100644 (file)
 
 #include "AliReconstructor.h"
 #include "AliITSRecoParam.h"
-
+#include "AliITSDetTypeRec.h"
+class AliESDpid;
 class AliITSgeom;
-class AliLoader;
 class AliTracker;
+class AliTrackleter;
 class AliITStrackerMI;
-class AliITSpidESD;
 
 class AliITSReconstructor: public AliReconstructor {
 public:
   AliITSReconstructor();
   virtual ~AliITSReconstructor();
-  AliITSReconstructor(const AliITSReconstructor &ob); // copy constructor
-  AliITSReconstructor& operator=(const AliITSReconstructor & ob); // ass. op.
-  virtual void Init(AliRunLoader* runLoader) const;
-  
-  virtual void         Reconstruct(AliRunLoader* runLoader) const;
-  virtual void         Reconstruct(AliRunLoader* runLoader,
-                                  AliRawReader* rawReader) const;
-  virtual void         Reconstruct(AliRawReader* rawReader, TTree* clustersTree) const 
-    {AliReconstructor::Reconstruct(rawReader,clustersTree);}
-  virtual void         Reconstruct(TTree* digitsTree, TTree* clustersTree) const 
-    {AliReconstructor::Reconstruct(digitsTree, clustersTree);}
-
-  virtual AliTracker*  CreateTracker(AliRunLoader* runLoader) const;
-  virtual AliVertexer* CreateVertexer(AliRunLoader* runLoader) const;
-  virtual void         FillESD(AliRunLoader* runLoader, AliESDEvent* esd) const;
-
-  virtual void         FillESD(TTree* digitsTree, TTree* clustersTree, 
-                                AliESDEvent* esd) const 
-    {AliReconstructor::FillESD(digitsTree, clustersTree, esd);}
-  virtual void         FillESD(AliRawReader* rawReader, TTree* clustersTree, 
+  virtual void         Init();
+  virtual void         GetPidSettings(AliESDpid *ESDpid);
+  virtual void         Reconstruct(AliRawReader* rawReader, TTree* clustersTree) const;
+  virtual void         Reconstruct(TTree* digitsTree, TTree* clustersTree) const;
+
+  virtual AliTracker*  CreateTracker() const;
+  virtual AliVertexer* CreateVertexer() const;
+  virtual AliTracker*  CreateTrackleter() const;
+  virtual AliTrackleter* CreateMultFinder() const;
+
+  virtual void         FillESD(TTree* /*digitsTree*/, TTree* clustersTree, 
+                              AliESDEvent* /* esd */) const; 
+  virtual void         FillESD(AliRawReader* /*rawReader*/, TTree* clustersTree, 
                               AliESDEvent* esd) const
-    {AliReconstructor::FillESD(rawReader, clustersTree, esd);}
-  virtual void         FillESD(AliRunLoader* runLoader, 
-                              AliRawReader* rawReader, AliESDEvent* esd) const
-    {AliReconstructor::FillESD(runLoader,rawReader, esd);}
+  {FillESD((TTree*)NULL, clustersTree, esd);}
+  void ResetRecPoints() {fDetTypeRec->ResetRecPoints();}
 
-  void SetRecoParam(AliITSRecoParam * param){ fgkRecoParam = param;}
-  static const AliITSRecoParam* GetRecoParam(){ return fgkRecoParam;}
+  static const AliITSRecoParam* GetRecoParam() { return dynamic_cast<const AliITSRecoParam*>(AliReconstructor::GetRecoParam(0)); }
 
 private:
-  // methods
-  AliITSgeom*          GetITSgeom(AliRunLoader* runLoader) const;
+  AliITSReconstructor(const AliITSReconstructor &); //Not implemented
+  AliITSReconstructor& operator=(const AliITSReconstructor &); //Not implemented
+
   //data
-  static AliITSRecoParam *   fgkRecoParam; // reconstruction parameters
-  AliITSpidESD *fItsPID; //Pid for ITS
-  ClassDef(AliITSReconstructor, 1)   // class for the ITS reconstruction
+  AliITSDetTypeRec       *fDetTypeRec;  // reconstructor
+
+  ClassDef(AliITSReconstructor, 6)   // class for the ITS reconstruction
 };
 
 #endif