]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - STEER/AliReconstructor.h
1) Storing of files to the Grid is now done _after_ your preprocessors succeeded...
[u/mrichter/AliRoot.git] / STEER / AliReconstructor.h
index 4fcd728b742fe63405a66d936c634b2eca7a8ab9..f3780940d29f4854dd22d6e5d46bc0e9750f27ef 100644 (file)
@@ -14,7 +14,9 @@
 #include <TObject.h>
 #include <TString.h>
 
+class TTree;
 class AliRunLoader;
+class AliRawReader;
 class AliVertexer;
 class AliTracker;
 class AliESD;
@@ -25,12 +27,30 @@ public:
   AliReconstructor(): TObject(), fOption() {};
   virtual ~AliReconstructor() {};
 
-  virtual void         Reconstruct(AliRunLoader* runLoader) const = 0;
+  virtual void         Init(AliRunLoader* /*runLoader*/) {};
+
+  virtual Bool_t       HasDigitConversion() const {return kFALSE;};
+  virtual void         ConvertDigits(AliRawReader* rawReader, TTree* digitsTree) const;
+
+  virtual Bool_t       HasLocalReconstruction() const {return kFALSE;};
+  virtual void         Reconstruct(TTree* digitsTree, TTree* clustersTree) const;
+  virtual void         Reconstruct(AliRawReader* rawReader, TTree* clustersTree) const;
+  virtual void         Reconstruct(AliRunLoader* runLoader) const;
+  virtual void         Reconstruct(AliRunLoader* runLoader, 
+                                  AliRawReader* rawReader) const;
+
   virtual AliVertexer* CreateVertexer(AliRunLoader* /*runLoader*/) const 
     {return NULL;}
   virtual AliTracker*  CreateTracker(AliRunLoader* /*runLoader*/) const 
     {return NULL;}
-  virtual void         FillESD(AliRunLoader* runLoader, AliESD* esd) const = 0;
+
+  virtual void         FillESD(TTree* digitsTree, TTree* clustersTree, 
+                              AliESD* esd) const;
+  virtual void         FillESD(AliRawReader* rawReader, TTree* clustersTree, 
+                              AliESD* esd) const;
+  virtual void         FillESD(AliRunLoader* runLoader, AliESD* esd) const;
+  virtual void         FillESD(AliRunLoader* runLoader, 
+                              AliRawReader* rawReader, AliESD* esd) const;
 
   virtual const char*  GetDetectorName() const;