]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PMD/AliPMDReconstructor.cxx
Trigger scalers added to ESD header.
[u/mrichter/AliRoot.git] / PMD / AliPMDReconstructor.cxx
index 69138b002a0630c1d42ed66f6b2e7f0309024726..3ee7cf738dbcacbdb6e4ded4c9e6e6ec90f5bf27 100644 (file)
 
 #include "Riostream.h"
 #include "AliPMDReconstructor.h"
-#include "AliRunLoader.h"
 #include "AliRun.h"
 #include "AliPMDClusterFinder.h"
 #include "AliPMDtracker.h"
 #include "AliRawReader.h"
 #include "AliESDPmdTrack.h"
-#include "AliESD.h"
+#include "AliESDEvent.h"
 #include "AliLog.h"
 
 ClassImp(AliPMDReconstructor)
 
-//_____________________________________________________________________________
-void AliPMDReconstructor::Init(AliRunLoader* runLoader) 
-{
-  // Initialize the reconstructor 
-  AliDebug(1, Form("Init called with runloader 0x%x", runLoader));
-  if (!runLoader)
-    { 
-      AliWarning("Init : No run loader");
-      return;
-    }
-}
-    
-//_____________________________________________________________________________
-void AliPMDReconstructor::Reconstruct(AliRunLoader* runLoader) const
-{
-// reconstruct clusters from digits file
-
-  AliPMDClusterFinder *pmdClus = new AliPMDClusterFinder(runLoader);
-  pmdClus->Load();
-  for (Int_t iEvent = 0; iEvent < runLoader->GetNumberOfEvents(); iEvent++)
-    {
-      pmdClus->Digits2RecPoints(iEvent);
-    }
-  pmdClus->UnLoad();
-  delete pmdClus;
-
-}
 // ------------------------------------------------------------------------ //
 
-void AliPMDReconstructor::Reconstruct(AliRunLoader* runLoader,
-                                     AliRawReader *rawReader) const
+void AliPMDReconstructor::Reconstruct(AliRawReader *rawReader,
+                                     TTree *clustersTree) const
 {
 // reconstruct clusters from Raw Data
-
-  AliPMDClusterFinder pmdClus(runLoader);
-  pmdClus.LoadClusters();
-
-  Int_t iEvent = 0;
-  while (rawReader->NextEvent()) {
-    pmdClus.Digits2RecPoints(iEvent,rawReader);
-    iEvent++;
-  }
-  pmdClus.UnLoadClusters();
-  
+    static AliPMDClusterFinder pmdClus;
+    pmdClus.Digits2RecPoints(rawReader, clustersTree);
 }
 
-
 // ------------------------------------------------------------------------ //
-
-void AliPMDReconstructor::Reconstruct(AliRawReader *rawReader,
+void AliPMDReconstructor::Reconstruct(TTree *digitsTree,
                                      TTree *clustersTree) const
 {
 // reconstruct clusters from Raw Data
 
-  AliPMDClusterFinder pmdClus;
-  pmdClus.Digits2RecPoints(rawReader, clustersTree);
+  static AliPMDClusterFinder pmdClus;
+  pmdClus.Digits2RecPoints(digitsTree, clustersTree);
 
 }
 
-// ------------------------------------------------------------------------ //
-
-//void AliPMDReconstructor::FillESD(AliRunLoader* runLoader,AliESD* esd) const
-//{
-//  AliLoader* loader = runLoader->GetLoader("PMDLoader");
-//  if (!loader) {
-//    AliError("PMD loader not found");
-//    return;
-//  }
-//  loader->LoadRecPoints("READ");
-//  TTree *treeR = loader->TreeR();
-//  AliPMDtracker pmdtracker;
-//  pmdtracker.LoadClusters(treeR);
-//  pmdtracker.Clusters2Tracks(esd);
-//  loader->UnloadRecPoints();
-//}
-
 // ------------------------------------------------------------------------ //
 void AliPMDReconstructor::FillESD(AliRawReader* /*rawReader*/,
-                                 TTree* clustersTree, AliESD* esd) const
+                                 TTree* clustersTree, AliESDEvent* esd) const
+{
+    static AliPMDtracker pmdtracker;
+    pmdtracker.LoadClusters(clustersTree);
+    pmdtracker.Clusters2Tracks(esd);
+}
+// ------------------------------------------------------------------------ //
+void AliPMDReconstructor::FillESD(TTree * /*digitsTree*/,
+                                 TTree* clustersTree, AliESDEvent* esd) const
 {
-  AliPMDtracker pmdtracker;
-  pmdtracker.LoadClusters(clustersTree);
-  pmdtracker.Clusters2Tracks(esd);
+    static AliPMDtracker pmdtracker;
+    pmdtracker.LoadClusters(clustersTree);
+    pmdtracker.Clusters2Tracks(esd);
 }