]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - JETAN/AliJetESDReader.cxx
rlu_hijing has to be float to work correctly with gfortran (Fedora Core 7)
[u/mrichter/AliRoot.git] / JETAN / AliJetESDReader.cxx
index 86444828a347c0ccc341a9eb02b9343a8f386c65..24cdcf0b653012adb8fc135fbbb6106dc1ba7bfe 100755 (executable)
@@ -29,7 +29,7 @@
 
 #include "AliJetESDReader.h"
 #include "AliJetESDReaderHeader.h"
-#include "AliESD.h"
+#include "AliESDEvent.h"
 #include "AliESDtrack.h"
 //#include "AliEMCALGeometry.h"
 #include "AliJetDummyGeo.h"
@@ -57,7 +57,6 @@ AliJetESDReader::AliJetESDReader():
     fArrayInitialised(0) 
 {
   // Constructor    
-    SetEMCALGeometry();
 }
 
 //____________________________________________________________________________
@@ -107,7 +106,7 @@ void AliJetESDReader::OpenInputFiles()
   
   int nMax = fChain->GetEntries(); 
 
-  printf("\nTotal number of events in chain= %d",nMax);
+  printf("\n AliJetESDReader: Total number of events in chain= %d \n",nMax);
   
   // set number of events in header
   if (fReaderHeader->GetLastEvent() == -1)
@@ -118,13 +117,13 @@ void AliJetESDReader::OpenInputFiles()
   }
 }
 
-void AliJetESDReader::ConnectTree(TTree* tree) {
+void AliJetESDReader::ConnectTree(TTree* tree, TObject* data) {
     // Connect the tree
-     fChain = (TChain*) tree;
+     fChain = (TChain*)      tree;
+     fESD   = (AliESDEvent*) data;
      
-     fChain->SetBranchAddress("ESD",    &fESD);
      Int_t nMax = fChain->GetEntries(); 
-     printf("\nTotal number of events in chain= %5d", nMax);
+     printf("\n AliJetESDReader: Total number of events in chain= %5d \n", nMax);
      // set number of events in header
      if (fReaderHeader->GetLastEvent() == -1)
         fReaderHeader->SetLastEvent(nMax);
@@ -136,7 +135,7 @@ void AliJetESDReader::ConnectTree(TTree* tree) {
 
 //____________________________________________________________________________
 
-Bool_t AliJetESDReader::FillMomentumArray(Int_t event)
+Bool_t AliJetESDReader::FillMomentumArray(Int_t /*event*/)
 {
   // Fill momentum array
 
@@ -146,18 +145,19 @@ Bool_t AliJetESDReader::FillMomentumArray(Int_t event)
   TVector3 p3;
   
   // clear momentum array
-   ClearArray();
-   fDebug = fReaderHeader->GetDebug();
-   InitParameters();
+  ClearArray();
+  fDebug = fReaderHeader->GetDebug();
   // get event from chain
-  fChain->GetTree()->GetEntry(event);
-
+  // fChain->GetTree()->GetEntry(event);
+  
   if (!fESD) {
       return kFALSE;
   }
   
   // get number of tracks in event (for the loop)
   nt = fESD->GetNumberOfTracks();
+  printf("Fill Momentum Array %5d ", nt);
+  
   // temporary storage of signal and pt cut flag
   Int_t* sflag  = new Int_t[nt];
   Int_t* cflag  = new Int_t[nt];
@@ -189,7 +189,7 @@ Bool_t AliJetESDReader::FillMomentumArray(Int_t event)
       sflag[goodTrack]=0;
       if (TMath::Abs(track->GetLabel()) < 10000) sflag[goodTrack]=1;
       cflag[goodTrack]=0;
-      if (pt > ptMin) cflag[goodTrack]=1;                       // pt cut
+      if (pt > ptMin) cflag[goodTrack]=1;                           // pt cut
       goodTrack++;
   }
   // set the signal flags
@@ -198,23 +198,29 @@ Bool_t AliJetESDReader::FillMomentumArray(Int_t event)
 
 //
 //
-  AliJetFillUnitArrayTracks *fillUAFromTracks = new AliJetFillUnitArrayTracks(); 
-  fillUAFromTracks->SetReaderHeader(fReaderHeader);
-  fillUAFromTracks->SetMomentumArray(fMomentumArray);
-  fillUAFromTracks->SetTPCGrid(fTpcGrid);
-  fillUAFromTracks->SetEMCalGrid(fEmcalGrid);
-  fillUAFromTracks->SetHadCorrection(fHCorrection);
-  fillUAFromTracks->SetHadCorrector(fHadCorr);
-  fNeta = fillUAFromTracks->GetNeta();
-  fNphi = fillUAFromTracks->GetNphi();
-  fillUAFromTracks->SetActive(kFALSE);
-  // TPC only or Digits+TPC or Clusters+TPC
-  if(fOpt%2==!0 && fOpt!=0){ 
-    fillUAFromTracks->SetActive(kTRUE);
-    fillUAFromTracks->SetUnitArray(fUnitArray);
-    fillUAFromTracks->ExecuteTask("tpc");
+  if (fTpcGrid || fEmcalGrid) {
+      SetEMCALGeometry();
+      InitParameters();
+      AliJetFillUnitArrayTracks *fillUAFromTracks = new AliJetFillUnitArrayTracks(); 
+      fillUAFromTracks->SetReaderHeader(fReaderHeader);
+      fillUAFromTracks->SetMomentumArray(fMomentumArray);
+      fillUAFromTracks->SetTPCGrid(fTpcGrid);
+      fillUAFromTracks->SetEMCalGrid(fEmcalGrid);
+      fillUAFromTracks->SetHadCorrection(fHCorrection);
+      fillUAFromTracks->SetHadCorrector(fHadCorr);
+      fNeta = fillUAFromTracks->GetNeta();
+      fNphi = fillUAFromTracks->GetNphi();
+      fillUAFromTracks->SetActive(kFALSE);
+      // TPC only or Digits+TPC or Clusters+TPC
+      if(fOpt%2==!0 && fOpt!=0) { 
+         fillUAFromTracks->SetActive(kTRUE);
+         fillUAFromTracks->SetUnitArray(fUnitArray);
+         fillUAFromTracks->ExecuteTask("tpc");
+      }
+  
+      delete fillUAFromTracks;
   }
-  delete fillUAFromTracks;
+
   return kTRUE;
 }
 
@@ -229,7 +235,6 @@ void AliJetESDReader::SetEMCALGeometry()
     // To be setted to run some AliEMCALGeometry functions
     TGeoManager::Import("geometry.root");
     fGeom->GetTransformationForSM();  
-    
     printf("\n EMCal Geometry set ! \n");
 
 }