Works with plugin now
authormorsch <morsch@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 17 Dec 2012 18:35:16 +0000 (18:35 +0000)
committermorsch <morsch@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 17 Dec 2012 18:35:16 +0000 (18:35 +0000)
Dmitri

ANALYSIS/TenderSupplies/AliPHOSTenderSupply.cxx
ANALYSIS/TenderSupplies/AliPHOSTenderSupply.h

index f1a0abb..524498d 100644 (file)
@@ -102,6 +102,10 @@ void AliPHOSTenderSupply::InitTender()
   if(fTender)
     runNumber = fTender->GetRun();
   else{
+    if(!fTask){
+      AliError("Neither Tender not Taks was not set") ;
+      return ;
+    }
     AliAODEvent *aod = dynamic_cast<AliAODEvent*>(fTask->InputEvent()) ;
     if(aod)
       runNumber = aod->GetRunNumber() ;
@@ -365,6 +369,10 @@ void AliPHOSTenderSupply::FindTrackMatching(Int_t mod,TVector3 *locpos,
     aod= dynamic_cast<AliAODEvent*>(fTask->InputEvent());
   }
   
+  if(!aod && !esd){
+    AliError("Neither AOD nor ESD is found") ;
+    return ;
+  }
   Double_t  magF = 0;
   if(esd) magF = esd->GetMagneticField();
   else  magF = aod->GetMagneticField();
@@ -558,9 +566,13 @@ Double_t AliPHOSTenderSupply::TestCPV(Double_t dx, Double_t dz, Double_t pt, Int
     AliESDEvent *esd= dynamic_cast<AliESDEvent*>(fTask->InputEvent());
     if(esd)
       mf = esd->GetMagneticField();
-    else{  
-      AliAODEvent *aod= dynamic_cast<AliAODEvent*>(fTask->InputEvent());
-      mf = aod->GetMagneticField();
+    else{
+      if(fTask){
+        AliAODEvent *aod= dynamic_cast<AliAODEvent*>(fTask->InputEvent());
+       if(aod)
+          mf = aod->GetMagneticField();
+      }
+      AliError("Neither Tender nor Task defined") ;
     }    
   }
   
index d010dbd..64077aa 100644 (file)
@@ -56,17 +56,17 @@ protected:
   void   EvalLambdas(AliVCluster * clu, Double_t &m02, Double_t &m20) ;
 private:
 
-  TString fOCDBpass ;                        //! Pass to OCDB recalibration object, local or alien
-  TString fNonlinearityVersion;              //! Version of non-linearity correction to aaply
-  AliPHOSGeometry   *fPHOSGeo;               //! PHOS geometry
-  Double_t fNonlinearityParams[10] ;         //! Parameters for non-linearity calculation
-  TH2I * fPHOSBadMap[5] ;                    //! Bad channels map
-  Int_t fRecoPass ;                          //! Reconstruction pass
+  TString fOCDBpass ;                        // Pass to OCDB recalibration object, local or alien
+  TString fNonlinearityVersion;              // Version of non-linearity correction to aaply
+  AliPHOSGeometry   *fPHOSGeo;               // PHOS geometry
+  Double_t fNonlinearityParams[10] ;         // Parameters for non-linearity calculation
+  TH2I * fPHOSBadMap[5] ;                    // Bad channels map
+  Int_t fRecoPass ;                          // Reconstruction pass
   Bool_t fUsePrivateBadMap ;
   Bool_t fUsePrivateCalib ;
   
-  AliPHOSCalibData *fPHOSCalibData;          //! PHOS calibration object
-  AliAnalysisTaskSE     *fTask;              //! analysis task
+  AliPHOSCalibData *fPHOSCalibData;          // PHOS calibration object
+  AliAnalysisTaskSE     *fTask;              // analysis task
 
  
   ClassDef(AliPHOSTenderSupply, 2); // PHOS tender task
@@ -75,3 +75,4 @@ private:
 
 #endif
 
+