]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - TPC/AliTPCReconstructor.h
Using the robust option of AliRelAlignerKalman
[u/mrichter/AliRoot.git] / TPC / AliTPCReconstructor.h
index c69c428b29ccfe77d2eb8f37595956061af4536c..d618b52725e5bcfa7bb952d7789152306bf2f141 100644 (file)
 
 class AliTPCParam;
 class AliTPCclustererMI;
+class AliTPCtrackerMI;
+class AliTPCAltroEmulator;
 
 class AliTPCReconstructor: public AliReconstructor {
 public:
   AliTPCReconstructor();
   virtual ~AliTPCReconstructor();
-
-  virtual Bool_t       HasLocalReconstruction() const {return kTRUE;}
-  virtual void         Reconstruct(AliRunLoader* runLoader) const;
-  virtual void         Reconstruct(AliRunLoader* runLoader,
-                                  AliRawReader* rawReader) const;
   virtual void         Reconstruct(TTree* digitsTree, TTree* clustersTree) const;
   virtual void         Reconstruct(AliRawReader* rawReader, TTree* clustersTree) const;
 
-  virtual AliTracker*  CreateTracker(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, 
-                              AliESDEvent* esd) const {
-    AliReconstructor::FillESD(rawReader,clustersTree,esd);
-  }
-  virtual void         FillESD(AliRunLoader* runLoader, 
-                              AliRawReader* rawReader, AliESDEvent* esd) const {
-    AliReconstructor::FillESD(runLoader,rawReader,esd);
-  }
-
-  void SetRecoParam(AliTPCRecoParam * param){ fgkRecoParam = param;}
-  static const AliTPCRecoParam* GetRecoParam(){ return fgkRecoParam;}
+  virtual AliTracker*  CreateTracker() const;
+
+  virtual void         FillESD(TTree* /*digitsTree*/, TTree* /*clustersTree*/, 
+                              AliESDEvent* esd) const;
+  virtual void         FillESD(AliRawReader* /*rawReader*/, TTree* /*clustersTree*/, 
+                              AliESDEvent* esd) const
+  {FillESD((TTree*)NULL,(TTree*)NULL,esd);}
+
+  static const AliTPCRecoParam* GetRecoParam() { return dynamic_cast<const AliTPCRecoParam*>(AliReconstructor::GetRecoParam(1)); }
   //
-  static Double_t GetCtgRange()     { return fgkRecoParam->GetCtgRange();}
-  static Double_t GetMaxSnpTracker(){ return fgkRecoParam->GetMaxSnpTracker();}
-  static Double_t GetMaxSnpTrack()  { return fgkRecoParam->GetMaxSnpTrack();}
+  static Double_t GetCtgRange()     { return GetRecoParam()->GetCtgRange();}
+  static Double_t GetMaxSnpTracker(){ return GetRecoParam()->GetMaxSnpTracker();}
+  static Double_t GetMaxSnpTrack()  { return GetRecoParam()->GetMaxSnpTrack();}
 
   static Int_t StreamLevel()               { return fgStreamLevel;}
   static void  SetStreamLevel(Int_t level) { fgStreamLevel = level;}
+  static void  SetAltroEmulator(AliTPCAltroEmulator *altro) { fAltroEmulator=altro;}
+  static AliTPCAltroEmulator *  GetAltroEmulator() { return fAltroEmulator;}
+
+  void ParseOptions(AliTPCtrackerMI* tracker) const;
 
 private:
+  AliTPCReconstructor(const AliTPCReconstructor&); //Not implemented
+  AliTPCReconstructor& operator=(const AliTPCReconstructor&); //Not implemented
   AliTPCParam*         GetTPCParam() const;
-  static AliTPCRecoParam *   fgkRecoParam; // reconstruction parameters
   static Int_t               fgStreamLevel; // flag for streaming      - for TPC reconstruction
   AliTPCclustererMI*         fClusterer;   // TPC clusterer
-
+  static AliTPCAltroEmulator * fAltroEmulator;    // ALTRO emulator
   ClassDef(AliTPCReconstructor, 0)   // class for the TPC reconstruction
 };