]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PWG4/PartCorrBase/AliCaloTrackESDReader.cxx
bugfixes for CALO/PHOS in the HLT build system
[u/mrichter/AliRoot.git] / PWG4 / PartCorrBase / AliCaloTrackESDReader.cxx
index f69f92b8c2596b53a4f525916349b701b4267b8d..5e2ddaf75dbb4eb7aef8fdfc46882df67a485f60 100755 (executable)
 
 //---- ANALYSIS system ----
 #include "AliCaloTrackESDReader.h" 
-#include "AliESDEvent.h"
 #include "AliESDCaloCluster.h"
 #include "AliAODCaloCluster.h"
 #include "AliAODTrack.h"
 #include "AliAODPid.h"
 #include "AliAODEvent.h"
-#include "AliFidutialCut.h"
+#include "AliFiducialCut.h"
 
 ClassImp(AliCaloTrackESDReader)
 
@@ -95,7 +94,7 @@ void AliCaloTrackESDReader::FillInputCTS() {
 
   //To be replaced by call to AliEMCALGeoUtils when the class becomes available
   Double_t radius = 441.0; //[cm] EMCAL radius +13cm
-
+  if(fDebug > 1) printf("AliCaloTrackESDReader::FillInputCTS() - org entries %d\n", nTracks);
   for (Int_t itrack =  0; itrack <  nTracks; itrack++) {////////////// track loop
     AliESDtrack * track = (AliESDtrack*) ((AliESDEvent*)fInputEvent)->GetTrack(itrack) ; // retrieve track from esd
     
@@ -105,7 +104,7 @@ void AliCaloTrackESDReader::FillInputCTS() {
        track->GetPxPyPz(p) ;
        TLorentzVector momentum(p[0],p[1],p[2],0);
       
-       if(fCTSPtMin < momentum.Pt() &&fFidutialCut->IsInFidutialCut(momentum,"CTS")){
+       if(fCTSPtMin < momentum.Pt() &&fFiducialCut->IsInFiducialCut(momentum,"CTS")){
        
                if(fDebug > 3 && momentum.Pt() > 0.2) printf("AliCaloTrackESDReader::FillInputCTS() - Selected tracks E %3.2f, pt %3.2f, phi %3.2f, eta %3.2f\n",
                                                    momentum.E(),momentum.Pt(),momentum.Phi()*TMath::RadToDeg(),momentum.Eta());
@@ -157,11 +156,11 @@ void AliCaloTrackESDReader::FillInputCTS() {
                  aodpid->SetEMCALMomentum(emcmom);
                  
                  AliExternalTrackParam *outerparam = (AliExternalTrackParam*)track->GetOuterParam();
-                 if(!outerparam) return;
+                 if(!outerparam) continue;
                  
                  Bool_t okpos = outerparam->GetXYZAt(radius,bfield,emcpos);
                  Bool_t okmom = outerparam->GetPxPyPzAt(radius,bfield,emcmom);
-                 if(!(okpos && okmom)) return;
+                 if(!(okpos && okmom)) continue;
                  
                  aodpid->SetEMCALPosition(emcpos);
                  aodpid->SetEMCALMomentum(emcmom);
@@ -169,9 +168,9 @@ void AliCaloTrackESDReader::FillInputCTS() {
                  aodTrack->SetDetPID(aodpid);
                }
                else continue;   // outside the beam pipe: orphan track 
-       }//Pt and Fidutial cut passed. 
+       }//Pt and Fiducial cut passed. 
   }// track loop
-  
+
   //Put references to selected tracks in array
   for(Int_t itrack = 0; itrack < (fOutputEvent->GetTracks())->GetEntriesFast(); itrack++){
     AliAODTrack * track =  (AliAODTrack*) (fOutputEvent->GetTracks())->At(itrack);     
@@ -193,18 +192,18 @@ void AliCaloTrackESDReader::FillInputEMCAL() {
   Int_t naod      = (fOutputEvent->GetCaloClusters())->GetEntriesFast();
   Int_t nTracks   = fInputEvent->GetNumberOfTracks() ;
   
-  //Loop to select clusters in fidutial cut and fill container with aodClusters
+  //Loop to select clusters in fiducial cut and fill container with aodClusters
   for (Int_t iclus = 0; iclus < ((AliESDEvent*)fInputEvent)->GetNumberOfCaloClusters(); iclus++) {
     AliESDCaloCluster * clus = 0;
     if ( (clus = ((AliESDEvent*)fInputEvent)->GetCaloCluster(iclus)) ) {
       if (clus->IsEMCAL()){
        TLorentzVector momentum ;
        clus->GetMomentum(momentum, v);      
-       if(fDebug > 3 && momentum.E() > 0.2) printf("AliCaloTrackESDReader::FillInputEMCAL() - all clusters E %3.2f, pt %3.2f, phi %3.2f, eta %3.2f\n",
+       if(fDebug > 3 && momentum.E() > 0.1) printf("AliCaloTrackESDReader::FillInputEMCAL() - all clusters E %3.2f, pt %3.2f, phi %3.2f, eta %3.2f\n",
                                                   momentum.E(),momentum.Pt(),momentum.Phi()*TMath::RadToDeg(),momentum.Eta()); 
-       if(fEMCALPtMin < momentum.Pt() && fFidutialCut->IsInFidutialCut(momentum,"EMCAL")){
+       if(fEMCALPtMin < momentum.Pt() && fFiducialCut->IsInFiducialCut(momentum,"EMCAL")){
          
-         if(fDebug > 2 && momentum.E() > 0.2) printf("AliCaloTrackESDReader::FillInputEMCAL() - Selected clusters E %3.2f, pt %3.2f, phi %3.2f, eta %3.2f\n",
+         if(fDebug > 2 && momentum.E() > 0.1) printf("AliCaloTrackESDReader::FillInputEMCAL() - Selected clusters E %3.2f, pt %3.2f, phi %3.2f, eta %3.2f\n",
                                                     momentum.E(),momentum.Pt(),momentum.Phi()*TMath::RadToDeg(),momentum.Eta());
          
          clus->GetPosition(pos) ;
@@ -229,7 +228,7 @@ void AliCaloTrackESDReader::FillInputEMCAL() {
                                      clus->GetEmcCpvDistance(),  clus->GetNExMax(), clus->GetTOF()) ;
          
          
-         if(fDebug > 3 && momentum.E() > 0.2)
+         if(fDebug > 3 && momentum.E() > 0.1)
            printf("AliCaloTrackESDReader::FillInputEMCAL() - Selected clusters Distance BC %2.2f, dispersion %2.2f, M20 %f, M02 %3.2f, NexMax %d, TOF %e\n",
                   clus->GetDistanceToBadChannel(), clus->GetClusterDisp(),clus->GetM20(), clus->GetM02(),
                   clus->GetNExMax(), clus->GetTOF());
@@ -247,7 +246,7 @@ void AliCaloTrackESDReader::FillInputEMCAL() {
            }
          }
          //Fill reference array
-       }//Pt and Fidutial cut passed.
+       }//Pt and Fiducial cut passed.
       }//EMCAL cluster
     }//cluster exists
   }//esd cluster loop
@@ -274,7 +273,7 @@ void AliCaloTrackESDReader::FillInputPHOS() {
   Int_t naod      = (fOutputEvent->GetCaloClusters())->GetEntriesFast();
   Int_t nTracks   = fInputEvent->GetNumberOfTracks() ;
 
-  //Loop to select clusters in fidutial cut and fill container with aodClusters
+  //Loop to select clusters in fiducial cut and fill container with aodClusters
   for (Int_t iclus = 0; iclus < ((AliESDEvent*)fInputEvent)->GetNumberOfCaloClusters(); iclus++) {
     AliESDCaloCluster * clus = 0;
     if ( (clus = ((AliESDEvent*)fInputEvent)->GetCaloCluster(iclus)) ) {
@@ -283,7 +282,7 @@ void AliCaloTrackESDReader::FillInputPHOS() {
        clus->GetMomentum(momentum, v);      
        if(fDebug > 3 && momentum.E() > 0.1)printf("AliCaloTrackESDReader::FillInputPHOS() - all clusters E %3.2f, pt %3.2f, phi %3.2f, eta %3.2f\n",
                                                   momentum.E(),momentum.Pt(),momentum.Phi()*TMath::RadToDeg(),momentum.Eta());
-       if(fPHOSPtMin < momentum.Pt() && fFidutialCut->IsInFidutialCut(momentum,"PHOS")){
+       if(fPHOSPtMin < momentum.Pt() && fFiducialCut->IsInFiducialCut(momentum,"PHOS")){
          
          if(fDebug > 2 && momentum.E() > 0.1)printf("AliCaloTrackESDReader::FillInputPHOS() - Selected clusters E %3.2f, pt %3.2f, phi %3.2f, eta %3.2f\n",
                                                     momentum.E(),momentum.Pt(),momentum.Phi()*TMath::RadToDeg(),momentum.Eta());
@@ -333,7 +332,7 @@ void AliCaloTrackESDReader::FillInputPHOS() {
                caloCluster->AddTrackMatched((fInputEvent->GetTrack(iESDtrack)));
            }
          }
-       }//Pt and Fidutial cut passed.
+       }//Pt and Fiducial cut passed.
       }//PHOS cluster
     }//cluster exists
   }//esd cluster loop
@@ -367,8 +366,9 @@ void AliCaloTrackESDReader::FillInputPHOSCells() {
 void AliCaloTrackESDReader::GetVertex(Double_t  v[3]) const {
   //Return vertex position
   
-  ((AliESDEvent*)fInputEvent)->GetVertex()->GetXYZ(v) ;
-  
+  //((AliESDEvent*)fInputEvent)->GetVertex()->GetXYZ(v) ;//SPD
+  ((AliESDEvent*)fInputEvent)->GetPrimaryVertex()->GetXYZ(v);
+       
 }