]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
Rename base classes from PartCorr to CaloTrackCorr, agreed new naming and directory...
authorgconesab <gconesab@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 12 Jan 2012 17:28:36 +0000 (17:28 +0000)
committergconesab <gconesab@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 12 Jan 2012 17:28:36 +0000 (17:28 +0000)
Extract from the analysis base class a new class containing the histograms settings AliHistogramRanges
All classes in the Dep directory affected and updated. Example macros updated or newly added with new naming

42 files changed:
PWG4/CMakelibPWG4PartCorrBase.pkg
PWG4/PWG4PartCorrBaseLinkDef.h
PWG4/PartCorrBase/AliAnaPartCorrBaseClass.cxx [deleted file]
PWG4/PartCorrBase/AliAnaPartCorrBaseClass.h [deleted file]
PWG4/PartCorrBase/AliAnaPartCorrMaker.cxx [deleted file]
PWG4/PartCorrBase/AliAnaPartCorrMaker.h [deleted file]
PWG4/PartCorrBase/AliHistogramRanges.cxx [new file with mode: 0755]
PWG4/PartCorrBase/AliHistogramRanges.h [new file with mode: 0755]
PWG4/PartCorrDep/AliAnaCalorimeterQA.cxx
PWG4/PartCorrDep/AliAnaCalorimeterQA.h
PWG4/PartCorrDep/AliAnaChargedParticles.cxx
PWG4/PartCorrDep/AliAnaChargedParticles.h
PWG4/PartCorrDep/AliAnaElectron.cxx
PWG4/PartCorrDep/AliAnaElectron.h
PWG4/PartCorrDep/AliAnaInsideClusterInvariantMass.cxx
PWG4/PartCorrDep/AliAnaInsideClusterInvariantMass.h
PWG4/PartCorrDep/AliAnaOmegaToPi0Gamma.cxx
PWG4/PartCorrDep/AliAnaOmegaToPi0Gamma.h
PWG4/PartCorrDep/AliAnaParticleHadronCorrelation.cxx
PWG4/PartCorrDep/AliAnaParticleHadronCorrelation.h
PWG4/PartCorrDep/AliAnaParticleIsolation.cxx
PWG4/PartCorrDep/AliAnaParticleIsolation.h
PWG4/PartCorrDep/AliAnaParticleJetFinderCorrelation.cxx
PWG4/PartCorrDep/AliAnaParticleJetFinderCorrelation.h
PWG4/PartCorrDep/AliAnaParticleJetLeadingConeCorrelation.cxx
PWG4/PartCorrDep/AliAnaParticleJetLeadingConeCorrelation.h
PWG4/PartCorrDep/AliAnaParticlePartonCorrelation.cxx
PWG4/PartCorrDep/AliAnaParticlePartonCorrelation.h
PWG4/PartCorrDep/AliAnaPhoton.cxx
PWG4/PartCorrDep/AliAnaPhoton.h
PWG4/PartCorrDep/AliAnaPhotonConvInCalo.cxx
PWG4/PartCorrDep/AliAnaPhotonConvInCalo.h
PWG4/PartCorrDep/AliAnaPi0.cxx
PWG4/PartCorrDep/AliAnaPi0.h
PWG4/PartCorrDep/AliAnaPi0EbE.cxx
PWG4/PartCorrDep/AliAnaPi0EbE.h
PWG4/PartCorrDep/AliAnaShowerParameter.cxx
PWG4/PartCorrDep/AliAnaShowerParameter.h
PWG4/macros/AddTaskCaloTrackCorr.C [moved from PWG4/macros/AddTaskPartCorr.C with 91% similarity]
PWG4/macros/AddTaskCaloTrackCorrM.C [moved from PWG4/macros/AddTaskPartCorrM.C with 82% similarity]
PWG4/macros/ana.C
PWG4/macros/anaM.C

index 4206ba56ed70d874b7fafef8db02b20573a3ab67..22d981d5d5daa8fd04b2e39ff5e5ac947084b4f5 100644 (file)
@@ -33,16 +33,17 @@ set ( SRCS
     PartCorrBase/AliMCAnalysisUtils.cxx 
     PartCorrBase/AliIsolationCut.cxx 
     PartCorrBase/AliAnaScale.cxx 
-    PartCorrBase/AliAnaPartCorrMaker.cxx 
-    PartCorrBase/AliAnaPartCorrBaseClass.cxx 
-    PartCorrBase/AliAnalysisTaskParticleCorrelation.cxx 
-    PartCorrBase/AliAnalysisTaskParticleCorrelationM.cxx 
     PartCorrBase/AliCaloTrackReader.cxx 
     PartCorrBase/AliCaloTrackESDReader.cxx 
     PartCorrBase/AliCaloTrackAODReader.cxx 
     PartCorrBase/AliCaloTrackMCReader.cxx 
     PartCorrBase/AliCalorimeterUtils.cxx 
     PartCorrBase/AliAnalysisTaskCounter.cxx 
+    PartCorrBase/AliAnaCaloTrackCorrMaker.cxx
+    PartCorrBase/AliAnaCaloTrackCorrBaseClass.cxx
+    PartCorrBase/AliAnalysisTaskCaloTrackCorrelation.cxx
+    PartCorrBase/AliAnalysisTaskCaloTrackCorrelationM.cxx
+    PartCorrBase/AliHistogramRanges.cxx
     )
 
 string ( REPLACE ".cxx" ".h" HDRS "${SRCS}" )
index 7072b82aa4c7489c3c9f78405f2b5b702d2941b8..84d3696e230fd862e330344f471870e347614452 100644 (file)
 #pragma link C++ class AliCaloPID+;
 #pragma link C++ class AliMCAnalysisUtils+;
 #pragma link C++ class AliIsolationCut+;
-#pragma link C++ class AliAnaPartCorrMaker+;
-#pragma link C++ class AliAnaPartCorrBaseClass+;
-#pragma link C++ class AliAnalysisTaskParticleCorrelation+;
-#pragma link C++ class AliAnalysisTaskParticleCorrelationM+;
 #pragma link C++ class AliCaloTrackReader+;
 #pragma link C++ class AliCaloTrackESDReader+;
 #pragma link C++ class AliCaloTrackAODReader+;
 #pragma link C++ class AliCaloTrackMCReader+;
 #pragma link C++ class AliCalorimeterUtils+;
 #pragma link C++ class AliAnalysisTaskCounter+;
+#pragma link C++ class AliAnaCaloTrackCorrMaker+;
+#pragma link C++ class AliAnaCaloTrackCorrBaseClass+;
+#pragma link C++ class AliAnalysisTaskCaloTrackCorrelation+;
+#pragma link C++ class AliAnalysisTaskCaloTrackCorrelationM+;
+#pragma link C++ class AliHistogramRanges+;
 
 #endif
diff --git a/PWG4/PartCorrBase/AliAnaPartCorrBaseClass.cxx b/PWG4/PartCorrBase/AliAnaPartCorrBaseClass.cxx
deleted file mode 100755 (executable)
index 8efc7fe..0000000
+++ /dev/null
@@ -1,542 +0,0 @@
-/**************************************************************************
- * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
- *                                                                        *
- * Author: The ALICE Off-line Project.                                    *
- * Contributors are mentioned in the code where appropriate.              *
- *                                                                        *
- * Permission to use, copy, modify and distribute this software and its   *
- * documentation strictly for non-commercial purposes is hereby granted   *
- * without fee, provided that the above copyright notice appears in all   *
- * copies and that both the copyright notice and this permission notice   *
- * appear in the supporting documentation. The authors make no claims     *
- * about the suitability of this software for any purpose. It is          *
- * provided "as is" without express or implied warranty.                  *
- **************************************************************************/
-/* $Id: $ */
-
-//_________________________________________________________________________
-// Base class for analysis algorithms
-//-- Author: Gustavo Conesa (LNF-INFN) 
-//
-//
-//_________________________________________________________________________
-
-
-// --- ROOT system ---
-#include <TClonesArray.h>
-//#include <Riostream.h>
-
-//---- AliRoot system ----
-#include "AliAnaPartCorrBaseClass.h"
-#include "AliCaloTrackReader.h"
-#include "AliCalorimeterUtils.h"
-#include "AliCaloPID.h"
-#include "AliFiducialCut.h"
-#include "AliIsolationCut.h"
-#include "AliMCAnalysisUtils.h"
-#include "AliNeutralMesonSelection.h"
-#include "AliVCaloCells.h" 
-#include "AliAODEvent.h"
-#include "AliAODHandler.h"
-#include "AliAnalysisManager.h"
-#include "AliAODPWG4Particle.h"
-
-ClassImp(AliAnaPartCorrBaseClass)
-
-
-//_______________________________________________
-AliAnaPartCorrBaseClass::AliAnaPartCorrBaseClass() : 
-TObject(), 
-fDataMC(0),                   fDebug(0),                   fCheckFidCut(0),
-fCheckCaloPID(0),             fRecalculateCaloPID(0), 
-fMinPt(0),                    fMaxPt(0),                   fPairTimeCut(200), 
-fMultiBin(0),                 fNZvertBin(0),
-fNrpBin(0),                   fNCentrBin(0),
-fNmaxMixEv(0),                fMaxMulti(0),                fMinMulti(0),
-fUseSelectEvent(kFALSE),      fMakePlots(kFALSE),
-fReader(0x0),                 fInputAODBranch(0x0),        fInputAODName(""),
-fOutputAODBranch(0x0),        fNewAOD(kFALSE),
-fOutputAODName(""),           fOutputAODClassName(""),
-fAODObjArrayName(""),         fAddToHistogramsName(""),
-fCaloPID(0x0),                fFidCut(0x0),                fIC(0x0),
-fMCUtils(0x0),                fNMS(0x0),                   fCaloUtils(0x0),
-fHistoPtBins(0),              fHistoPtMax(0.),             fHistoPtMin(0.),
-fHistoPhiBins(0),             fHistoPhiMax(0.),            fHistoPhiMin(0.),
-fHistoEtaBins(0),             fHistoEtaMax(0.),            fHistoEtaMin(0.),
-fHistoMassBins(0),            fHistoMassMax(0.),           fHistoMassMin(0.),
-fHistoAsymBins(0),            fHistoAsymMax(0.),           fHistoAsymMin(0.),
-fHistoV0SBins(0),             fHistoV0SMax(0),             fHistoV0SMin(0),
-fHistoV0MBins(0),             fHistoV0MMax(0),             fHistoV0MMin(0),
-fHistoTrMBins(0),             fHistoTrMMax(0),             fHistoTrMMin(0),
-fHistoFinePtBins(1000),       fHistoFinePtMax(5.),         fHistoFinePtMin(0.),
-fHistoPOverEBins(100),        fHistoPOverEMax(100.),       fHistoPOverEMin(0.),
-fHistodEdxBins(100),          fHistodEdxMax(100.),         fHistodEdxMin(0.),
-fHistodRBins(100),            fHistodRMax(100.),           fHistodRMin(0.),
-fHistoTimeBins(100),          fHistoTimeMax(100.),         fHistoTimeMin(0.),
-fHistoNClusCellBins(100),     fHistoNClusCellMax(100),     fHistoNClusCellMin(0),
-fHistoNCellsBins(100),        fHistoNCellsMax(100),        fHistoNCellsMin(0),
-fHistoNClustersBins(100),     fHistoNClustersMax(100),     fHistoNClustersMin(0),
-fHistoRatioBins(100),         fHistoRatioMax(100.),        fHistoRatioMin(0.),
-fHistoVertexDistBins(100),    fHistoVertexDistMax(100.),   fHistoVertexDistMin(0.),
-fHistoRBins(100),             fHistoRMax(1000),            fHistoRMin(-1000),
-fHistoXBins(100),             fHistoXMax(1000),            fHistoXMin(-1000),
-fHistoYBins(100),             fHistoYMax(1000),            fHistoYMin(-1000),
-fHistoZBins(100),             fHistoZMax(1000),            fHistoZMin(-1000),
-fHistoSSBins(0),              fHistoSSMax(0),              fHistoSSMin(0),
-fHistoDiffTimeBins(0),        fHistoDiffTimeMax(0),        fHistoDiffTimeMin(0)
-{
-  //Default Ctor
-  
-  //Initialize parameters
-  InitParameters();
-}
-
-//_________________________________________________
-AliAnaPartCorrBaseClass::~AliAnaPartCorrBaseClass() 
-{
-  // Remove all pointers except analysis output pointers.
-  //printf("---Delete analysis %s\n", fAODObjArrayName.Data());
-  // Not sure if it should be me who deletes the delta AOD branches.
-  //  if(fOutputAODBranch){
-  //    fOutputAODBranch->Clear() ; 
-  //    delete fOutputAODBranch ;
-  //  }
-  //  
-  //  if(fInputAODBranch){
-  //    fInputAODBranch->Clear() ; 
-  //    delete fInputAODBranch ;
-  //  }
-  
-  //if(fCaloUtils)    delete fCaloUtils ; //Already deleted in maker
-  //if(fReader)       delete fReader ;    //Already deleted in maker
-       
-  if(fCaloPID)   delete fCaloPID ;
-  if(fFidCut)    delete fFidCut ;
-  if(fIC)        delete fIC ;
-  if(fMCUtils)   delete fMCUtils ;
-  if(fNMS)       delete fNMS ;
-  
-  //   printf("--- analysis deleted \n");
-}
-
-//_________________________________________________________________
-void AliAnaPartCorrBaseClass::AddAODParticle(AliAODPWG4Particle pc)
-{
-  //Put AOD calo cluster in the AODParticleCorrelation array
-  
-  if(fOutputAODBranch){
-    
-    Int_t i = fOutputAODBranch->GetEntriesFast();
-    //new((*fOutputAODBranch)[i])  AliAODPWG4Particle(pc);
-    if(strcmp(fOutputAODBranch->GetClass()->GetName(),"AliAODPWG4Particle")==0)
-      new((*fOutputAODBranch)[i])  AliAODPWG4Particle(pc);
-    else   if(strcmp(fOutputAODBranch->GetClass()->GetName(),"AliAODPWG4ParticleCorrelation")==0)
-      new((*fOutputAODBranch)[i])  AliAODPWG4ParticleCorrelation(pc);
-    else {
-      printf("AliAnaPartCorrBaseClass::AddAODParticle() - Cannot add an object of type < %s >, to the AOD TClonesArray \n",  
-             fOutputAODBranch->GetClass()->GetName());
-      abort();    
-    }
-  }
-  else {
-    printf(" AliAnaPartCorrBaseClass::AddAODParticle() - No AOD branch available!!!\n");
-    abort();
-  }
-  
-}      
-
-
-//___________________________________________________________
-void AliAnaPartCorrBaseClass::ConnectInputOutputAODBranches() 
-{
-  //Recover ouput and input AOD pointers for each event in the maker
-       
-  //Delta AODs
-  if(fDebug > 3) printf("AliAnaPartCorrBaseClass::ConnectInputOutputAODBranches() - Connect Input with name: <%s>; Connect output with name <%s>\n",fInputAODName.Data(),fOutputAODName.Data());
-  
-  //Get the AOD handler, if output AOD is created use it, if not get the branches from the input which should be deltaAODs
-  AliAODHandler* aodHandler = 0x0;
-  Bool_t outAOD = kFALSE;
-  if((AliAnalysisManager::GetAnalysisManager())->GetOutputEventHandler()) outAOD = kTRUE;
-  if(outAOD) aodHandler = (AliAODHandler*) ((AliAnalysisManager::GetAnalysisManager())->GetOutputEventHandler()); 
-  else              aodHandler = (AliAODHandler*) ((AliAnalysisManager::GetAnalysisManager())->GetInputEventHandler());
-  
-  if(!GetReader()->WriteDeltaAODToFile())
-  {
-    fOutputAODBranch =  (TClonesArray *) (fReader->GetAODBranchList())->FindObject(fOutputAODName);
-    fInputAODBranch  =  (TClonesArray *) (fReader->GetAODBranchList())->FindObject(fInputAODName);     
-  }
-  else if (aodHandler->GetExtensions()) { 
-    
-    AliAODExtension *ext = (AliAODExtension*)aodHandler->GetExtensions()->FindObject(GetReader()->GetDeltaAODFileName()); 
-    if(ext){
-      AliAODEvent *aodEvent = ext->GetAOD(); 
-      if(fNewAOD)fOutputAODBranch = (TClonesArray*) aodEvent->FindListObject(fOutputAODName);
-      fInputAODBranch = (TClonesArray*) aodEvent->FindListObject(fInputAODName);         
-      if(!fOutputAODBranch && fNewAOD) fOutputAODBranch =  (TClonesArray *) fReader->GetOutputEvent()->FindListObject(fOutputAODName);
-      if(!fInputAODBranch)  fInputAODBranch  =  (TClonesArray *) fReader->GetOutputEvent()->FindListObject(fInputAODName);
-    }
-    else{//If no Delta AODs, kept in standard branch, to revise. 
-      if(fNewAOD && fReader->GetOutputEvent()) {
-        fOutputAODBranch =  (TClonesArray *) fReader->GetOutputEvent()->FindListObject(fOutputAODName);
-        fInputAODBranch  =  (TClonesArray *) fReader->GetOutputEvent()->FindListObject(fInputAODName); 
-      }
-      else {
-        fInputAODBranch  =  (TClonesArray *) fReader->GetInputEvent()->FindListObject(fInputAODName);  
-        if(!fInputAODBranch && fReader->GetOutputEvent() ) 
-          fInputAODBranch  =  (TClonesArray *) fReader->GetOutputEvent()->FindListObject(fInputAODName);//Try the output event.
-      }
-    }
-  }
-  else{ //If no Delta AODs, kept in standard branch
-    if(fNewAOD && fReader->GetOutputEvent()) {
-      fOutputAODBranch =  (TClonesArray *) fReader->GetOutputEvent()->FindListObject(fOutputAODName);
-      fInputAODBranch  =  (TClonesArray *) fReader->GetOutputEvent()->FindListObject(fInputAODName);   
-    }
-    else{ 
-      fInputAODBranch  =  (TClonesArray *) fReader->GetInputEvent()->FindListObject(fInputAODName);
-      if(!fInputAODBranch && fReader->GetOutputEvent())  
-        fInputAODBranch  =  (TClonesArray *) fReader->GetOutputEvent()->FindListObject(fInputAODName);//Try the output event.
-    }
-  }
-  
-  if(GetDebug() > 1){
-    if(fNewAOD && !fOutputAODBranch) 
-      printf(" AliAnaPartCorrBaseClass::ConnectInputOutputAODBranches() - Output Branch <%s>, not found!\n",fOutputAODName.Data());
-    if(!fNewAOD && !fInputAODBranch) 
-      printf(" AliAnaPartCorrBaseClass::ConnectInputOutputAODBranches() - Input Branch  <%s>, not found!\n",fInputAODName.Data());
-  }
-}
-
-
-//_____________________________________________________________________________________
-AliVCluster * AliAnaPartCorrBaseClass::FindCluster(TObjArray* clusters, const Int_t id, 
-                                                   Int_t & iclus, const Int_t first) 
-{
-  // Given the cluster ID stored in AliAODPWG4Particle, get the originator cluster and its index in the array
-  
-  if(!clusters) return 0x0;
-  
-  for(iclus = first; iclus < clusters->GetEntriesFast(); iclus++){
-    AliVCluster *cluster= dynamic_cast<AliVCluster*> (clusters->At(iclus));
-    if(cluster){
-      if     (cluster->GetID()==id) {
-        return cluster;
-      }
-    }      
-  }// calorimeter clusters loop
-  
-  return 0x0;
-  
-}
-
-
-//_________________________________________________________________________
-TClonesArray * AliAnaPartCorrBaseClass::GetAODBranch(TString aodName) const 
-{
-       //Recover ouput and input AOD pointers for each event in the maker
-       
-       //Delta AODs
-       if(fDebug > 3) printf("AliAnaPartCorrBaseClass::GetAODBranch() - Get Input Branch with name: <%s>; \n",aodName.Data());
-       
-  //Get the AOD handler, if output AOD is created use it, if not get the branches from the input which should be deltaAODs
-  AliAODHandler* aodHandler = 0x0;
-  Bool_t outAOD = kFALSE;
-  if((AliAnalysisManager::GetAnalysisManager())->GetOutputEventHandler()) outAOD = kTRUE;
-  if(outAOD) aodHandler = (AliAODHandler*) ((AliAnalysisManager::GetAnalysisManager())->GetOutputEventHandler()); 
-  else              aodHandler = (AliAODHandler*) ((AliAnalysisManager::GetAnalysisManager())->GetInputEventHandler());
-  
-  if(!GetReader()->WriteDeltaAODToFile())
-  {
-    return  (TClonesArray *) (fReader->GetAODBranchList())->FindObject(aodName);
-  }
-  else if (aodHandler->GetExtensions())
-  { 
-    AliAODExtension *ext = (AliAODExtension*)aodHandler->GetExtensions()->FindObject(GetReader()->GetDeltaAODFileName()); 
-    if(ext){
-      AliAODEvent *aodEvent = ext->GetAOD(); 
-      TClonesArray * aodbranch =  (TClonesArray*) aodEvent->FindListObject(aodName);
-      if(aodbranch) return aodbranch;
-      else {
-        if(outAOD) return  (TClonesArray *) fReader->GetOutputEvent()->FindListObject(aodName);
-        else       return  (TClonesArray *) fReader->GetInputEvent() ->FindListObject(aodName);
-      }
-    }
-    else{//If no Delta AODs, kept in standard branch, to revise. 
-      if(outAOD) return (TClonesArray *) fReader->GetOutputEvent()->FindListObject(aodName);
-      else       return (TClonesArray *) fReader->GetInputEvent() ->FindListObject(aodName);
-    }
-  }
-  else{ //If no Delta AODs, kept in standard branch, to revise. 
-    if(outAOD) return (TClonesArray *)  fReader->GetOutputEvent()->FindListObject(aodName);
-    else       return  (TClonesArray *) fReader->GetInputEvent() ->FindListObject(aodName);
-  }
-  
-}
-
-//________________________________________________________
-TObjArray *  AliAnaPartCorrBaseClass::GetCTSTracks() const 
-{
-  //Get list of referenced tracks from reader
-  
-  return fReader->GetCTSTracks(); 
-  
-}
-
-//___________________________________________________________
-TObjArray *  AliAnaPartCorrBaseClass::GetPHOSClusters() const 
-{
-  //Get list of PHOS reference caloclusters from reader
-  
-  return fReader->GetPHOSClusters(); 
-  
-}
-
-//____________________________________________________________
-TObjArray *  AliAnaPartCorrBaseClass::GetEMCALClusters() const 
-{
-  //Get list of emcal referenced caloclusters from reader
-  
-  return fReader->GetEMCALClusters(); 
-  
-}
-
-//_________________________________________________________________
-TClonesArray *  AliAnaPartCorrBaseClass::GetAODCaloClusters() const 
-{
-  //Get list of all caloclusters in AOD output file 
-  
-  return fReader->GetOutputEvent()->GetCaloClusters(); 
-  
-}
-
-//___________________________________________________________
-TClonesArray *  AliAnaPartCorrBaseClass::GetAODTracks() const 
-{
-  //Get list of all tracks in AOD output file 
-  
-  return fReader->GetOutputEvent()->GetTracks(); 
-  
-}
-
-//_______________________________________________________
-TString  AliAnaPartCorrBaseClass::GetBaseParametersList()  
-{
-  //Put data member values in string to keep in output container
-  
-  TString parList ; //this will be list of parameters used for this analysis.
-  const Int_t buffersize = 255;
-  char onePar[buffersize] ;
-  snprintf(onePar,buffersize,"--- AliAnaPartCorrBaseClass ---\n") ;
-  parList+=onePar ;    
-  snprintf(onePar,buffersize,"Minimal P_t: %2.2f ; Max\n", fMinPt) ;
-  parList+=onePar ;
-  snprintf(onePar,buffersize,"Minimal P_t: %2.2f ; Max\n", fMaxPt) ;
-  parList+=onePar ;
-  snprintf(onePar,buffersize,"|t_{1}-t_{2}| < %2.2f ; Max\n", fPairTimeCut) ;
-  parList+=onePar ;
-  snprintf(onePar,buffersize,"fDataMC =%d (Check MC information, on/off) \n",fDataMC) ;
-  parList+=onePar ;
-  snprintf(onePar,buffersize,"fCheckFidCut=%d (Check Fiducial cut selection on/off) \n",fCheckFidCut) ;
-  parList+=onePar ;
-  snprintf(onePar,buffersize,"fCheckCaloPID =%d (Use Bayesian PID in calorimetes, on/off) \n",fCheckCaloPID) ;
-  parList+=onePar ;
-  snprintf(onePar,buffersize,"fRecalculateCaloPID  =%d (Calculate PID from shower/tof/tracking parameters, on/off) \n",fRecalculateCaloPID) ;
-  parList+=onePar ;
-  snprintf(onePar,buffersize,"fInputAODName  =%s Input AOD name \n",fInputAODName.Data()) ;
-  parList+=onePar ;    
-  if(fNewAOD){
-    snprintf(onePar,buffersize,"fOutputAODName  =%s Output AOD name \n",fOutputAODName.Data()) ;
-    parList+=onePar ;  
-    snprintf(onePar,buffersize,"fOutputAODClassName  =%s Output AOD class name \n",fOutputAODClassName.Data()) ;
-    parList+=onePar ;  
-  }
-  snprintf(onePar,buffersize,"fAODObjArrayName  =%s Reference arrays in AOD name \n",fAODObjArrayName.Data()) ;
-  parList+=onePar ;    
-  snprintf(onePar,buffersize,"fAddToHistogramsName  =%s String added to beginning of histograms name \n",fAddToHistogramsName.Data()) ;
-  parList+=onePar ;    
-       
-  return parList; 
-  
-}
-
-//________________________________________________________________
-TClonesArray * AliAnaPartCorrBaseClass::GetCreateOutputAODBranch() 
-{
-  //Create AOD branch filled in the analysis
-  
-  printf("Create AOD branch of %s objects and with name < %s >\n",
-         fOutputAODClassName.Data(),fOutputAODName.Data()) ;
-  
-  TClonesArray * aodBranch = new TClonesArray(fOutputAODClassName, 0);
-  aodBranch->SetName(fOutputAODName);
-  return aodBranch ;
-  
-}
-
-//___________________________________________________
-Int_t AliAnaPartCorrBaseClass::GetEventNumber() const 
-{
-  //Get current event number
-  
-  return fReader->GetEventNumber() ; 
-  
-}
-
-
-//_____________________________________________________
-AliStack *  AliAnaPartCorrBaseClass::GetMCStack() const 
-{
-  //Get stack pointer from reader
-  
-  return fReader->GetStack(); 
-  
-}
-//_______________________________________________________
-AliHeader *  AliAnaPartCorrBaseClass::GetMCHeader() const
-{
-  //Get header pointer from reader
-  
-  return fReader->GetHeader(); 
-  
-}
-
-//_______________________________________________________________________
-AliGenEventHeader *  AliAnaPartCorrBaseClass::GetMCGenEventHeader() const
-{
-  //Get GenEventHeader pointer from reader
-  
-  return fReader->GetGenEventHeader(); 
-  
-}
-
-//____________________________________________
-void AliAnaPartCorrBaseClass::InitParameters()
-{ 
-  //Initialize the parameters of the analysis.
-  fDataMC              = kFALSE;
-  fDebug               = -1;
-  fCheckCaloPID        = kTRUE ;
-  fCheckFidCut         = kFALSE ;
-  fRecalculateCaloPID  = kFALSE ;
-  fMinPt               = 0.1  ; //Min pt in particle analysis
-  fMaxPt               = 300. ; //Max pt in particle analysis
-  fMultiBin            = 1;
-  fNZvertBin           = 1;
-  fNrpBin              = 1;
-  fMaxMulti            = 1000;
-  fMinMulti            = 0;
-  fUseSelectEvent      = kFALSE ;
-  
-  //fReader    = new AliCaloTrackReader(); //Initialized in maker
-  //fCaloUtils = new AliCalorimeterUtils();//Initialized in maker
-  
-  fNewAOD              = kFALSE ;
-  fOutputAODName       = "PartCorr";
-  fOutputAODClassName  = "AliAODPWG4Particle";
-  fInputAODName        = "PartCorr";
-  fAddToHistogramsName = "";
-  fAODObjArrayName     = "Ref";
-  
-  //Histogram settings
-  fHistoPtBins    = 240 ;
-  fHistoPtMax     = 120 ;
-  fHistoPtMin     = 0.  ;
-  
-  fHistoPhiBins   = 120 ;
-  fHistoPhiMax    = TMath::TwoPi();
-  fHistoPhiMin    = 0.  ;
-  
-  fHistoEtaBins   = 100 ;
-  fHistoEtaMax    =  1  ;
-  fHistoEtaMin    = -1  ;
-  
-  fHistoMassBins  = 200;
-  fHistoMassMax   = 1. ;
-  fHistoMassMin   = 0. ;
-       
-  fHistoAsymBins  = 10 ;
-  fHistoAsymMax   = 1. ;
-  fHistoAsymMin   = 0. ;
-  
-  fHistoV0SBins   = 100 ;
-  fHistoV0SMax    = 10000  ;
-  fHistoV0SMin    = 0  ;
-  
-  fHistoV0MBins  = 100;
-  fHistoV0MMax   = 10000 ;
-  fHistoV0MMin   = 0 ;
-       
-  fHistoTrMBins  = 100 ;
-  fHistoTrMMax   = 2000 ;
-  fHistoTrMMin   = 0 ;
-  
-  fHistoPOverEBins       = 100 ;  fHistoPOverEMax       = 10.  ;  fHistoPOverEMin       = 0. ;
-  fHistodEdxBins         = 200 ;  fHistodEdxMax         = 400. ;  fHistodEdxMin         = 0. ;  
-  fHistodRBins           = 300 ;  fHistodRMax           = 3.15 ;  fHistodRMin           = 0. ;
-  fHistoTimeBins         = 1000;  fHistoTimeMax         = 1.e3 ;  fHistoTimeMin         = 0. ;//ns
-  fHistoNClusCellBins    = 200 ;  fHistoNClusCellMax    = 200  ;  fHistoNClusCellMin    = 0  ;
-  fHistoNCellsBins       = 300 ;  fHistoNCellsMax       = 300  ;  fHistoNCellsMin       = 0  ;
-  fHistoNClustersBins    = 50  ;  fHistoNClustersMax    = 50   ;  fHistoNClustersMin    = 0  ;
-  fHistoRatioBins        = 200 ;  fHistoRatioMax        = 2    ;  fHistoRatioMin        = 0. ;
-  fHistoVertexDistBins   = 100 ;  fHistoVertexDistMax   = 500. ;  fHistoVertexDistMin   = 0. ;
-  fHistoRBins            = 100 ;  fHistoRMax            = 500  ;  fHistoRMin            = -500  ;//cm
-  fHistoXBins            = 100 ;  fHistoXMax            = 500  ;  fHistoXMin            = -500  ;//cm
-  fHistoYBins            = 100 ;  fHistoYMax            = 500  ;  fHistoYMin            = -500  ;//cm
-  fHistoZBins            = 100 ;  fHistoZMax            = 600  ;  fHistoZMin            = -500  ;//cm
-  fHistoSSBins           = 500 ;  fHistoSSMax           = 5    ;  fHistoSSMin           = 0  ;  
-  fHistoDiffTimeBins     = 800 ;  fHistoDiffTimeMax     = 400  ;  fHistoDiffTimeMin     = -400; // ns
-  
-}
-
-//_____________________________________________________________
-void AliAnaPartCorrBaseClass::Print(const Option_t * opt) const
-{
-  //Print some relevant parameters set for the analysis
-  
-  if(! opt)
-    return;
-       
-  printf("New AOD:            =     %d\n",fNewAOD);
-  printf("Input AOD name:     =     %s\n",fInputAODName.Data());
-  printf("Output AOD name:    =     %s\n",fOutputAODName.Data());
-  printf("Output AOD Class name: =  %s\n",fOutputAODClassName.Data());
-  printf("Min Photon pT       =     %2.2f\n",  fMinPt) ;
-  printf("Max Photon pT       =     %3.2f\n",  fMaxPt) ;
-  printf("Check PID           =     %d\n",     fCheckCaloPID) ;
-  printf("Recalculate PID     =     %d\n",     fRecalculateCaloPID) ;
-  printf("Check Fiducial cut  =     %d\n",     fCheckFidCut) ;
-  printf("Check MC labels     =     %d\n",     fDataMC);
-  printf("Make plots?         =     %d \n",    fMakePlots);    
-  printf("Debug Level         =     %d\n",     fDebug);
-  printf("Histograms: %3.1f < pT  < %3.1f,  Nbin = %d\n", fHistoPtMin,  fHistoPtMax,  fHistoPtBins);
-  printf("Histograms: %3.1f < phi < %3.1f, Nbin = %d\n", fHistoPhiMin, fHistoPhiMax, fHistoPhiBins);
-  printf("Histograms: %3.1f < eta < %3.1f, Nbin = %d\n", fHistoEtaMin, fHistoEtaMax, fHistoEtaBins);
-  printf("Histograms: %3.1f < mass < %3.1f, Nbin = %d\n", fHistoMassMin, fHistoMassMax, fHistoMassBins);
-  printf("Histograms: %3.1f < asymmetry < %3.1f, Nbin = %d\n", fHistoAsymMin, fHistoAsymMax, fHistoAsymBins);
-  printf("Histograms: %d < V0 Signal < %d, Nbin = %d\n", fHistoV0SMin, fHistoV0SMax, fHistoV0SBins);
-  printf("Histograms: %d < V0 Mult < %d, Nbin = %d\n", fHistoV0MMin, fHistoV0MMax, fHistoV0MBins);
-  printf("Histograms: %d < Track Mult < %d, Nbin = %d\n", fHistoTrMMin, fHistoTrMMax, fHistoTrMBins);
-  printf("Histograms: %3.1f < p/E  < %3.1f, Nbin = %d\n", fHistoPOverEMin, fHistoPOverEMax, fHistoPOverEBins);
-  printf("Histograms: %3.1f < dEdx < %3.1f, Nbin = %d\n", fHistodEdxMin,   fHistodEdxMax,   fHistodEdxBins);
-  printf("Histograms: %3.1f < dR (track cluster)   < %3.1f, Nbin = %d\n", fHistodRMin,     fHistodRMax,     fHistodRBins);
-  printf("Histograms: %3.1f < R=sqrt{x^2+y^2}    < %3.1f, Nbin = %d\n", fHistoRMin,      fHistoRMax,      fHistoRBins);
-  printf("Histograms: %3.1f < X    < %3.1f, Nbin = %d\n", fHistoXMin,      fHistoXMax,      fHistoXBins);
-  printf("Histograms: %3.1f < Y    < %3.1f, Nbin = %d\n", fHistoYMin,      fHistoYMax,      fHistoYBins);
-  printf("Histograms: %3.1f < Z    < %3.1f, Nbin = %d\n", fHistoZMin,      fHistoZMax,      fHistoZBins);
-  printf("Histograms: %g < Time < %g, Nbin = %d\n"      , fHistoTimeMin,   fHistoTimeMax,   fHistoTimeBins);
-  printf("Histograms: %d < N cells per cluster    < %d, Nbin = %d\n", fHistoNClusCellMin,   fHistoNClusCellMax,   fHistoNClusCellBins);
-  printf("Histograms: %d < N cells   < %d, Nbin = %d\n"             , fHistoNCellsMin,      fHistoNCellsMax,      fHistoNCellsBins);
-  printf("Histograms: %d < N clusters   < %d, Nbin = %d\n"          , fHistoNClustersMin,   fHistoNClustersMax,   fHistoNClustersBins);
-  printf("Histograms: %3.1f < Ratio< %3.1f, Nbin = %d\n", fHistoRatioMin,  fHistoRatioMax,  fHistoRatioBins);
-  printf("Histograms: %3.1f < Vertex Distance < %3.1f, Nbin = %d\n", fHistoVertexDistMin, fHistoVertexDistMax, fHistoVertexDistBins);
-  
-  printf("Name of reference array      : %s\n", fAODObjArrayName.Data());      
-  printf("String added histograms name : %s\n",fAddToHistogramsName.Data());
-       
-  printf("    \n") ;
-  
-} 
-
-
-
diff --git a/PWG4/PartCorrBase/AliAnaPartCorrBaseClass.h b/PWG4/PartCorrBase/AliAnaPartCorrBaseClass.h
deleted file mode 100755 (executable)
index 92507f5..0000000
+++ /dev/null
@@ -1,563 +0,0 @@
-#ifndef ALIANAPARTCORRBASECLASS_H
-#define ALIANAPARTCORRBASECLASS_H
-/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
- * See cxx source for full Copyright notice     */
-/* $Id: $ */
-
-  //_________________________________________________________________________
-  // Base class for analysis algorithms
-  //-- Author: Gustavo Conesa (INFN-LNF)
-//-Add the possibality for event selection analysis based on vertex and multiplicity bins (Yaxian Mao, 10/10/2010)
-#include <cstdlib>
-
-  //ROOT
-class TClonesArray ;
-class TObjArray ;
-#include <TList.h> 
-#include <TObject.h>
-class TObjString;
-
-  //Analysis
-class AliVCaloCells;
-#include "AliCaloTrackReader.h"   
-#include "AliCaloPID.h"
-#include "AliFiducialCut.h"
-#include "AliIsolationCut.h"
-#include "AliMCAnalysisUtils.h"
-#include "AliNeutralMesonSelection.h"
-#include "AliCalorimeterUtils.h" 
-class AliStack ; 
-class AliHeader ; 
-class AliGenEventHeader ; 
-#include "AliAODPWG4ParticleCorrelation.h"
-class AliEMCALGeometry;
-class AliPHOSGeoUtils;
-#include "AliMixedEvent.h" 
-#include "AliCentrality.h"
-#include "AliEventplane.h"
-
-class AliAnaPartCorrBaseClass : public TObject {
-       
-public:   
-  AliAnaPartCorrBaseClass() ; // default ctor
-  virtual ~AliAnaPartCorrBaseClass() ; //virtual dtor
-  
-private:
-  AliAnaPartCorrBaseClass(const AliAnaPartCorrBaseClass & g) ; // cpy ctor
-  AliAnaPartCorrBaseClass & operator = (const AliAnaPartCorrBaseClass & g) ;//cpy assignment
-  
-public:
-
-  
-  //General methods, to be declared in deriving classes if needed
-  
-  virtual void MakeAnalysisFillAOD()  {;}
-  
-  virtual void MakeAnalysisFillHistograms() {;}  
-  
-  AliVCluster* FindCluster(TObjArray* clusters, const Int_t id, Int_t & iclus, const Int_t first=0) ;
-
-  virtual void Init() {;}
-  virtual void InitParameters() ;
-  
-  virtual void Print(const Option_t * ) const ;
-       
-  virtual void Terminate(TList * /*outputList*/) {;}
-    
-  
-  //Histograms, cuts 
-  virtual TList * GetCreateOutputObjects()              { return (new TList)          ; }
-       
-  virtual void    AddToHistogramsName(TString add)      { fAddToHistogramsName = add  ; }  
-  virtual TString GetAddedHistogramsStringToName()const { return fAddToHistogramsName ; }
-  
-  virtual TObjString * GetAnalysisCuts()                { return 0x0                  ; }
-  TString              GetBaseParametersList();
-
-  //Getters, setters
-  virtual Int_t   GetDebug()                      const { return fDebug               ; }
-  virtual void    SetDebug(Int_t d)                     { fDebug = d                  ; }
-
-  virtual Int_t   GetEventNumber() const ;
-
-  virtual AliCaloTrackReader * GetReader()            const { return fReader   ; }
-  virtual void SetReader(AliCaloTrackReader * const reader) { fReader = reader ; }
-    
-  //Calorimeter specific access methods
-  AliCalorimeterUtils * GetCaloUtils()            const { return fCaloUtils                     ; }
-  void    SetCaloUtils(AliCalorimeterUtils * caloutils) { fCaloUtils = caloutils                ; }    
-
-  AliEMCALGeometry *  GetEMCALGeometry()          const { return fCaloUtils->GetEMCALGeometry() ; }
-  AliPHOSGeoUtils  *  GetPHOSGeometry()           const { return fCaloUtils->GetPHOSGeometry()  ; }
-  
-  Int_t GetModuleNumberCellIndexes(const Int_t absId, const TString calo, Int_t & icol, Int_t & irow, Int_t &iRCU) const {
-         return fCaloUtils->GetModuleNumberCellIndexes(absId, calo, icol, irow,iRCU);}
-  Int_t GetModuleNumber(AliAODPWG4Particle * part) const {
-         return fCaloUtils->GetModuleNumber(part, fReader->GetInputEvent());}
-  Int_t GetModuleNumber(AliVCluster * cluster)     const {
-         return fCaloUtils->GetModuleNumber(cluster);}
-       
-  //Centrality
-  AliCentrality* GetCentrality()       const { return fReader->GetCentrality()       ; }
-  Int_t          GetEventCentrality()  const { return fReader->GetEventCentrality()  ; }
-       
-  //Event plane
-  AliEventplane* GetEventPlane()       const { return fReader->GetEventPlane()       ; }           
-  TString        GetEventPlaneMethod() const { return fReader->GetEventPlaneMethod() ; }
-  
-  //AOD branch
-  virtual void AddAODParticle(AliAODPWG4Particle part) ;
-  virtual void ConnectInputOutputAODBranches();
-  
-  virtual TClonesArray * GetCreateOutputAODBranch() ;
-  virtual TString GetInputAODName()          const { return fInputAODName  ; }
-  virtual void SetInputAODName(TString name)       { fInputAODName = name  ; } 
-  virtual TString GetOutputAODName()         const { return fOutputAODName ; }
-  virtual void SetOutputAODName(TString name)      { fNewAOD = kTRUE ; fOutputAODName = name; }
-  virtual Bool_t NewOutputAOD()              const { return fNewAOD        ; }
-  virtual TString GetOutputAODClassName()    const { return fOutputAODClassName ; }
-  virtual void SetOutputAODClassName(TString name) { fOutputAODClassName = name ; }
-       
-  virtual TString GetAODObjArrayName()       const { return fAODObjArrayName ; }
-  virtual void SetAODObjArrayName(TString name)    { fAODObjArrayName = name ; }
-  
-  virtual TClonesArray* GetInputAODBranch()  const { return fInputAODBranch  ; }
-  virtual TClonesArray* GetOutputAODBranch() const { if(fNewAOD) return fOutputAODBranch; else return fInputAODBranch ; }
-  virtual TClonesArray* GetAODBranch(TString aodBranchName) const ;
-       
-  //Track cluster arrays access methods
-  virtual TClonesArray*  GetAODCaloClusters() const ;
-  virtual TClonesArray*  GetAODTracks()       const ;  
-  virtual AliVCaloCells* GetPHOSCells()       const { return fReader->GetPHOSCells()  ;}
-  virtual AliVCaloCells* GetEMCALCells()      const { return fReader->GetEMCALCells() ;}
-  virtual TObjArray*     GetCTSTracks()       const ;
-  virtual TObjArray*     GetEMCALClusters()   const ;
-  virtual TObjArray*     GetPHOSClusters()    const ;
-  
-  //MC event acces methods
-  virtual AliStack *                 GetMCStack()          const ;
-  virtual AliHeader*                 GetMCHeader()         const ;
-  virtual AliGenEventHeader        * GetMCGenEventHeader() const ;
-  
-  //Analysis helpers classes pointers setters and getters
-  virtual AliCaloPID               * GetCaloPID()                { if(!fCaloPID) fCaloPID = new AliCaloPID();           return  fCaloPID ; }
-  virtual AliFiducialCut           * GetFiducialCut()            { if(!fFidCut)  fFidCut = new AliFiducialCut();        return  fFidCut  ; }
-  virtual AliIsolationCut          * GetIsolationCut()           { if(!fIC)      fIC = new AliIsolationCut();           return  fIC      ; }
-  virtual AliMCAnalysisUtils       * GetMCAnalysisUtils()        { if(!fMCUtils) fMCUtils = new AliMCAnalysisUtils();   return  fMCUtils ; }
-  virtual AliNeutralMesonSelection * GetNeutralMesonSelection()  { if(!fNMS)     fNMS = new AliNeutralMesonSelection(); return  fNMS     ; }
-
-  virtual void SetCaloPID(AliCaloPID * const pid)                             { fCaloPID = pid     ; }
-  virtual void SetFiducialCut(AliFiducialCut * const fc)                      { fFidCut  = fc      ; }
-  virtual void SetIsolationCut(AliIsolationCut * const ic)                    { fIC      = ic      ; }
-  virtual void SetMCAnalysisUtils(AliMCAnalysisUtils * const mcutils)         { fMCUtils = mcutils ; } 
-  virtual void SetNeutralMesonSelection(AliNeutralMesonSelection * const nms) { fNMS     = nms     ; }
-       
-  virtual Bool_t IsDataMC()                   const { return fDataMC                ; }
-  virtual void   SwitchOnDataMC()                   { fDataMC = kTRUE ; if(!fMCUtils)fMCUtils = new AliMCAnalysisUtils();}
-  virtual void   SwitchOffDataMC()                  { fDataMC = kFALSE              ; }
-  
-  virtual Bool_t IsFiducialCutOn()            const { return fCheckFidCut           ; }
-  virtual void   SwitchOnFiducialCut()              { fCheckFidCut = kTRUE;  if(!fFidCut)fFidCut = new AliFiducialCut();}
-  virtual void   SwitchOffFiducialCut()             { fCheckFidCut = kFALSE         ; }
-    
-  virtual Bool_t IsCaloPIDOn()                const { return fCheckCaloPID          ; }
-  virtual void   SwitchOnCaloPID()                  { fCheckCaloPID = kTRUE; if(!fCaloPID)fCaloPID = new AliCaloPID();}
-  virtual void   SwitchOffCaloPID()                 { fCheckCaloPID = kFALSE        ; }
-  
-  //Cluster energy/momentum cut
-  virtual Float_t GetMaxPt()          const { return fMaxPt ; }
-  virtual Float_t GetMinPt()          const { return fMinPt ; }
-  virtual void    SetMaxPt(Float_t pt)      { fMaxPt = pt   ; }
-  virtual void    SetMinPt(Float_t pt)      { fMinPt = pt   ; }
-  virtual void    SetPtCutRange(Double_t ptmin, Double_t ptmax)
-  {  fMaxPt=ptmax;   fMinPt=ptmin; }
-  
-  virtual Float_t GetMaxEnergy()      const { return fMaxPt ; }
-  virtual Float_t GetMinEnergy()      const { return fMinPt ; }
-  virtual void    SetMaxEnergy(Float_t e)   { fMaxPt = e    ; }
-  virtual void    SetMinEnergy(Float_t e)   { fMinPt = e    ; }
-  virtual void    SetEnergyCutRange(Double_t emin, Double_t emax)
-  {  fMaxPt=emax;   fMinPt=emin; }
-  
-  //Cluster Pairs Time cut  
-  virtual void    SetPairTimeCut(Float_t t) { fPairTimeCut  = t   ; } //ns
-  virtual Float_t GetPairTimeCut()    const { return fPairTimeCut ; } //ns
-
-  //Setters for parameters of event buffers
-  virtual void SetMultiBin(Int_t n=1)    { fMultiBin  = n ;} //number of bins in Multiplicity  
-  virtual void SetNZvertBin(Int_t n=1)   { fNZvertBin = n ;} //number of bins for vertex position
-  virtual void SetNRPBin(Int_t n=1)      { fNrpBin    = n ;} //number of bins in reaction plain  
-  virtual void SetNCentrBin(Int_t n=1)   { fNCentrBin = n ;} //number of bins in centrality 
-  virtual void SetNMaxEvMix(Int_t n=20)  { fNmaxMixEv = n ;} //maximal number of events for mixing
-  virtual void SetMultiplicity(Int_t multimin, Int_t multimax) {fMinMulti = multimin ; fMaxMulti = multimax ; }
-  virtual void SwitchOnEventSelection()  { fUseSelectEvent = kTRUE  ; }
-  virtual void SwitchOffEventSelection() { fUseSelectEvent = kFALSE ; } 
-  //Getters for event selection
-  virtual Int_t   GetMultiBin()    const { return fMultiBin  ; } //number of bins in Multiplicity 
-  virtual Int_t   GetNZvertBin()   const { return fNZvertBin ; } //number of bins in vertex   
-  virtual Int_t   GetNRPBin()      const { return fNrpBin    ; } //number of bins in reaction plain 
-  virtual Int_t   GetNCentrBin()   const { return fNCentrBin ; } //number of bins in centrality
-  virtual Int_t   GetNMaxEvMix()   const { return fNmaxMixEv ; } //maximal number of events for mixin
-  virtual Float_t GetZvertexCut()  const { return GetReader()->GetZvertexCut();} //cut on vertex position  
-  virtual Int_t   GetMaxMulti()    const { return fMaxMulti  ; }  
-  virtual Int_t   GetMinMulti()    const { return fMinMulti  ; }  
-  
-  // Do correlation analysis with different event buffers
-  virtual Bool_t DoEventSelect()  const { return fUseSelectEvent ; }
-  
-  //Mixed event
-  virtual AliMixedEvent * GetMixedEvent()         { return GetReader()->GetMixedEvent()  ; } 
-  virtual Int_t           GetNMixedEvent()  const { return GetReader()->GetNMixedEvent() ; } 
-  
-  //Vertex methods
-  virtual void      GetVertex(Double_t vertex[3]) const { GetReader()->GetVertex(vertex) ; } 
-  virtual void      GetVertex(Double_t vertex[3], const Int_t evtIndex) const 
-  { GetReader()->GetVertex(vertex,evtIndex)                  ; } 
-  virtual Double_t* GetVertex(const Int_t evtIndex) const { return GetReader()->GetVertex(evtIndex) ; } 
-  
-       virtual Bool_t    IsTrackMatched(AliVCluster * cluster, AliVEvent* event) const 
-  { return fCaloPID->IsTrackMatched(cluster, fCaloUtils, event)                    ; } 
-  
-  //MULTIPLICITY
-  Int_t GetTrackMultiplicity()      const { return fReader->GetTrackMultiplicity() ; }
-  //VZERO
-  Int_t GetV0Signal(Int_t i )       const { return fReader->GetV0Signal(i)         ; }
-  Int_t GetV0Multiplicity(Int_t i ) const { return fReader->GetV0Multiplicity(i)   ; }
-  
-  
-  //Histogrammes setters and getters (move to independend class to hold the parameters soon)
-  
-  //Pt, Energy 
-  virtual void SetHistoPtRangeAndNBins(Float_t min, Float_t max, Int_t n) {
-    fHistoPtBins = n ;
-    fHistoPtMax = max ;
-    fHistoPtMin = min ;
-  }
-  
-  virtual Int_t   GetHistoPtBins() const { return fHistoPtBins ; }
-  virtual Float_t GetHistoPtMin()  const { return fHistoPtMin  ; }
-  virtual Float_t GetHistoPtMax()  const { return fHistoPtMax  ; }
-  virtual void SetHistoEnergyRangeAndNBins(Float_t min, Float_t max, Int_t n) {
-    SetHistoPtRangeAndNBins(min, max, n);
-  }
-  
-  virtual Int_t   GetHistoEnergyBins() const { return fHistoPtBins ; }
-  virtual Float_t GetHistoEnergyMin()  const { return fHistoPtMin  ; }
-  virtual Float_t GetHistoEnergyMax()  const { return fHistoPtMax  ; }
-  
-    //Azimuthal angle
-  virtual void SetHistoPhiRangeAndNBins(Float_t min, Float_t max, Int_t n) {
-    fHistoPhiBins  = n ;
-    fHistoPhiMax   = max ;
-    fHistoPhiMin   = min ;
-  }
-  
-  virtual Int_t   GetHistoPhiBins()  const { return fHistoPhiBins; }
-  virtual Float_t GetHistoPhiMin()   const { return fHistoPhiMin ; }
-  virtual Float_t GetHistoPhiMax()   const { return fHistoPhiMax ; }
-  
-  //Pseudorapidity-rapidity
-  virtual void SetHistoEtaRangeAndNBins(Float_t min, Float_t max, Int_t n) {
-    fHistoEtaBins = n ;
-    fHistoEtaMax  = max ;
-    fHistoEtaMin  = min ;
-  }
-  
-  virtual Int_t   GetHistoEtaBins()  const { return fHistoEtaBins; }
-  virtual Float_t GetHistoEtaMin()   const { return fHistoEtaMin ; }
-  virtual Float_t GetHistoEtaMax()   const { return fHistoEtaMax ; }
-  
-  //Mass
-  virtual void SetHistoMassRangeAndNBins(Float_t min, Float_t max, Int_t n) {
-    fHistoMassBins = n ;
-    fHistoMassMax  = max ;
-    fHistoMassMin  = min ;
-  }
-       
-  virtual Int_t   GetHistoMassBins()  const { return fHistoMassBins ; }
-  virtual Float_t GetHistoMassMin()   const { return fHistoMassMin  ; }
-  virtual Float_t GetHistoMassMax()   const { return fHistoMassMax  ; }
-       
-  //Asymetry
-  virtual void SetHistoAsymmetryRangeAndNBins(Float_t min, Float_t max, Int_t n) {
-    fHistoAsymBins = n ;
-    fHistoAsymMax  = max ;
-    fHistoAsymMin  = min ;
-  }
-       
-  virtual Int_t   GetHistoAsymmetryBins()  const { return fHistoAsymBins ; }
-  virtual Float_t GetHistoAsymmetryMin()   const { return fHistoAsymMin  ; }
-  virtual Float_t GetHistoAsymmetryMax()   const { return fHistoAsymMax  ; }   
-  
-  
-  //VZero
-  virtual void SetHistoV0SignalRangeAndNBins(Int_t min, Int_t max, Int_t n) {
-    fHistoV0SBins = n ;
-    fHistoV0SMax  = max ;
-    fHistoV0SMin  = min ;
-  }
-       
-  virtual Int_t GetHistoV0SignalBins()  const { return fHistoV0SBins ; }
-  virtual Int_t GetHistoV0SignalMin()   const { return fHistoV0SMin  ; }
-  virtual Int_t GetHistoV0SignalMax()   const { return fHistoV0SMax  ; }
-       
-  virtual void SetHistoV0MultiplicityRangeAndNBins(Int_t min, Int_t max, Int_t n) {
-    fHistoV0MBins = n ;
-    fHistoV0MMax  = max ;
-    fHistoV0MMin  = min ;
-  }
-       
-  virtual Int_t GetHistoV0MultiplicityBins()  const { return fHistoV0MBins ; }
-  virtual Int_t GetHistoV0MultiplicityMin()   const { return fHistoV0MMin  ; }
-  virtual Int_t GetHistoV0MultiplicityMax()   const { return fHistoV0MMax  ; }
-  
-  virtual void SetHistoTrackMultiplicityRangeAndNBins(Int_t min, Int_t max, Int_t n) {
-    fHistoTrMBins = n ;
-    fHistoTrMMax  = max ;
-    fHistoTrMMin  = min ;
-  }
-       
-  virtual Int_t GetHistoTrackMultiplicityBins()  const { return fHistoTrMBins ; }
-  virtual Int_t GetHistoTrackMultiplicityMin()   const { return fHistoTrMMin  ; }
-  virtual Int_t GetHistoTrackMultiplicityMax()   const { return fHistoTrMMax  ; }
-  
-  
-  Int_t   GetHistoFinePtBins()           const { return fHistoFinePtBins     ; }
-  Float_t GetHistoFinePtMin()            const { return fHistoFinePtMin      ; }
-  Float_t GetHistoFinePtMax()            const { return fHistoFinePtMax      ; }       
-  
-  Int_t   GetHistodEdxBins()             const { return fHistodEdxBins       ; }
-  Float_t GetHistodEdxMin()              const { return fHistodEdxMin        ; }
-  Float_t GetHistodEdxMax()              const { return fHistodEdxMax        ; }       
-  
-  Int_t   GetHistoNClusterCellBins()     const { return fHistoNClusCellBins  ; }
-  Int_t   GetHistoNClusterCellMin()      const { return fHistoNClusCellMin   ; }
-  Int_t   GetHistoNClusterCellMax()      const { return fHistoNClusCellMax   ; }       
-  
-  Int_t   GetHistoNClustersBins()        const { return fHistoNClustersBins  ; }
-  Int_t   GetHistoNClustersMin()         const { return fHistoNClustersMin   ; }
-  Int_t   GetHistoNClustersMax()         const { return fHistoNClustersMax   ; }       
-  
-  Int_t   GetHistoNCellsBins()           const { return fHistoNCellsBins     ; }
-  Int_t   GetHistoNCellsMin()            const { return fHistoNCellsMin      ; }
-  Int_t   GetHistoNCellsMax()            const { return fHistoNCellsMax      ; }       
-  
-  Int_t   GetHistoPOverEBins()           const { return fHistoPOverEBins     ; }
-  Float_t GetHistoPOverEMin()            const { return fHistoPOverEMin      ; }
-  Float_t GetHistoPOverEMax()            const { return fHistoPOverEMax      ; }
-       
-  Int_t   GetHistodRBins()               const { return fHistodRBins         ; }
-  Float_t GetHistodRMin()                const { return fHistodRMin          ; }
-  Float_t GetHistodRMax()                const { return fHistodRMax          ; }       
-  
-  Int_t   GetHistoTimeBins()             const { return fHistoTimeBins       ; }
-  Float_t GetHistoTimeMin()              const { return fHistoTimeMin        ; }
-  Float_t GetHistoTimeMax()              const { return fHistoTimeMax        ; }       
-  
-  Int_t   GetHistoRatioBins()            const { return fHistoRatioBins      ; }
-  Float_t GetHistoRatioMin()             const { return fHistoRatioMin       ; }
-  Float_t GetHistoRatioMax()             const { return fHistoRatioMax       ; }       
-  
-  Int_t   GetHistoVertexDistBins()       const { return fHistoVertexDistBins ; }
-  Float_t GetHistoVertexDistMin()        const { return fHistoVertexDistMin  ; }
-  Float_t GetHistoVertexDistMax()        const { return fHistoVertexDistMax  ; }       
-  
-  Int_t   GetHistoRBins()                const { return fHistoRBins          ; }
-  Float_t GetHistoRMin()                 const { return fHistoRMin           ; }
-  Float_t GetHistoRMax()                 const { return fHistoRMax           ; }         
-  
-  Int_t   GetHistoXBins()                const { return fHistoXBins          ; }
-  Float_t GetHistoXMin()                 const { return fHistoXMin           ; }
-  Float_t GetHistoXMax()                 const { return fHistoXMax           ; }
-  
-  Int_t   GetHistoYBins()                const { return fHistoYBins          ; }
-  Float_t GetHistoYMin()                 const { return fHistoYMin           ; }
-  Float_t GetHistoYMax()                 const { return fHistoYMax           ; }       
-  
-  Int_t   GetHistoZBins()                const { return fHistoZBins          ; }
-  Float_t GetHistoZMin()                 const { return fHistoZMin           ; }
-  Float_t GetHistoZMax()                 const { return fHistoZMax           ; }       
-       
-  Int_t   GetHistoShowerShapeBins()      const { return fHistoSSBins         ; }
-  Float_t GetHistoShowerShapeMin()       const { return fHistoSSMin          ; }
-  Float_t GetHistoShowerShapeMax()       const { return fHistoSSMax          ; }       
-  
-  Int_t   GetHistoDiffTimeBins()         const { return fHistoDiffTimeBins   ; }
-       Float_t GetHistoDiffTimeMin()          const { return fHistoDiffTimeMin    ; }
-       Float_t GetHistoDiffTimeMax()          const { return fHistoDiffTimeMax    ; }  
-  
-  
-  virtual void SetHistoPOverERangeAndNBins      (Float_t min, Float_t max, Int_t n) {
-    fHistoPOverEBins     = n ; fHistoPOverEMax     = max ; fHistoPOverEMin     = min ; }
-  
-  virtual void SetHistoFinePtRangeAndNBins      (Float_t min, Float_t max, Int_t n) {
-    fHistoFinePtBins     = n ; fHistoFinePtMax     = max ; fHistoFinePtMin     = min ; }
-  
-  virtual void SetHistodEdxRangeAndNBins        (Float_t min, Float_t max, Int_t n) {
-    fHistodEdxBins       = n ; fHistodEdxMax       = max ; fHistodEdxMin       = min ; }
-  
-  virtual void SetHistodRRangeAndNBins          (Float_t min, Float_t max, Int_t n) {
-    fHistodRBins         = n ; fHistodRMax         = max ; fHistodRMin         = min ; }
-  
-  virtual void SetHistoTimeRangeAndNBins        (Float_t min, Float_t max, Int_t n) {
-    fHistoTimeBins       = n ; fHistoTimeMax       = max ; fHistoTimeMin       = min ; }       
-  
-  virtual void SetHistoNClusterCellRangeAndNBins(Int_t   min, Int_t   max, Int_t n) {
-    fHistoNClusCellBins  = n ; fHistoNClusCellMax  = max ; fHistoNClusCellMin  = min ; }
-  
-  virtual void SetHistoNClustersRangeAndNBins   (Int_t   min, Int_t   max, Int_t n) {
-    fHistoNClustersBins  = n ; fHistoNClustersMax  = max ; fHistoNClustersMin  = min ; }
-  
-  virtual void SetHistoNCellsRangeAndNBins      (Int_t   min, Int_t   max, Int_t n) {
-    fHistoNCellsBins     = n ; fHistoNCellsMax     = max ; fHistoNCellsMin     = min ; }
-  
-  virtual void SetHistoRatioRangeAndNBins       (Float_t min, Float_t max, Int_t n) {
-    fHistoRatioBins      = n ; fHistoRatioMax      = max ; fHistoRatioMin      = min ; }
-  
-  virtual void SetHistoVertexDistRangeAndNBins  (Float_t min, Float_t max, Int_t n) { 
-    fHistoVertexDistBins = n ; fHistoVertexDistMax = max ; fHistoVertexDistMin = min ; }
-  
-  virtual void SetHistoXRangeAndNBins           (Float_t min, Float_t max, Int_t n) {
-    fHistoXBins          = n ; fHistoXMax          = max ; fHistoXMin          = min ; }
-  
-  virtual void SetHistoYRangeAndNBins           (Float_t min, Float_t max, Int_t n) {
-    fHistoYBins          = n ; fHistoYMax          = max ; fHistoYMin          = min ; }
-  
-  virtual void SetHistoZRangeAndNBins           (Float_t min, Float_t max, Int_t n) {
-    fHistoZBins         = n ; fHistoZMax           = max ; fHistoZMin          = min ; }
-  
-  virtual void SetHistoRRangeAndNBins           (Float_t min, Float_t max, Int_t n) {
-    fHistoRBins         = n ; fHistoRMax           = max ; fHistoRMin          = min ; }
-  
-  virtual void SetHistoShowerShapeRangeAndNBins (Float_t min, Float_t max, Int_t n) {
-    fHistoSSBins        = n ; fHistoSSMax          = max ; fHistoSSMin        = min ; }
-  
-  void         SetHistoDiffTimeRangeAndNBins(Float_t min, Float_t max, Int_t n) {
-    fHistoDiffTimeBins  = n ; fHistoDiffTimeMax   = max ; fHistoDiffTimeMin   = min   ; }
-         
-  void   SwitchOnPlotsMaking()  { fMakePlots = kTRUE  ; }
-  void   SwitchOffPlotsMaking() { fMakePlots = kFALSE ; }
-  Bool_t MakePlotsOn()    const { return fMakePlots   ; }
-  
-private:    
-  
-  Bool_t   fDataMC ;             // Flag to access MC data when using ESD or AOD     
-  Int_t    fDebug ;              // Debug level
-  Bool_t   fCheckFidCut ;        // Do analysis for clusters in defined region         
-  Bool_t   fCheckCaloPID ;       // Do analysis for calorimeters
-  Bool_t   fRecalculateCaloPID ; // Recalculate PID or use PID weights in calorimeters
-  Float_t  fMinPt ;              // Maximum pt of (trigger) particles in the analysis
-  Float_t  fMaxPt ;              // Minimum pt of (trigger) particles in the analysis
-  Float_t  fPairTimeCut;         // Maximum difference between time of cluster pairs (ns)
-  Int_t    fMultiBin ;          // Number of bins in event container for multiplicity
-  Int_t    fNZvertBin ;                 // Number of bins in event container for vertex position
-  Int_t    fNrpBin ;              // Number of bins in event container for reaction plain
-  Int_t    fNCentrBin ;                 // Number of bins in event container for centrality
-  Int_t    fNmaxMixEv ;                 // Maximal number of events stored in buffer for mixing
-  Int_t    fMaxMulti ;           // Maximum multiplicity of particles in the analysis
-  Int_t    fMinMulti ;           // Maximum multiplicity of particles in the analysis
-  Bool_t   fUseSelectEvent ;     // Select events based on multiplicity and vertex cuts
-  Bool_t   fMakePlots   ;        // Print plots
-
-       
-  AliCaloTrackReader * fReader; // Acces to ESD/AOD/MC data
-  
-  TClonesArray* fInputAODBranch ;    //! Selected input particles branch
-  TString       fInputAODName ;      //  Name of input AOD branch;
-  TClonesArray* fOutputAODBranch ;   //! Selected output particles branch
-  Bool_t        fNewAOD ;            //  Flag, new aod branch added to the analysis or not.
-  TString       fOutputAODName ;     //  Name of output AOD branch;
-  TString       fOutputAODClassName; //  Type of aod objects to be stored in the TClonesArray (AliAODPWG4Particle, AliAODPWG4ParticleCorrelation ...)  
-  TString       fAODObjArrayName ;   //  Name of ref array kept in a TList in AliAODParticleCorrelation with clusters or track references.
-  TString       fAddToHistogramsName;//  Add this string to histograms name
-  
-  //Analysis helper classes access pointers
-  AliCaloPID               * fCaloPID; // PID calculation
-  AliFiducialCut           * fFidCut;  // Acceptance cuts
-  AliIsolationCut          * fIC;      // Isolation cut 
-  AliMCAnalysisUtils       * fMCUtils; // MonteCarlo Analysis utils 
-  AliNeutralMesonSelection * fNMS;     // Neutral Meson Selection
-  AliCalorimeterUtils      * fCaloUtils ; // Pointer to CalorimeterUtils
-
-  //Histograms binning and range    
-  Int_t    fHistoPtBins   ;  // Number of bins in pt axis
-  Float_t  fHistoPtMax    ;  // Maximum value of pt histogram range
-  Float_t  fHistoPtMin    ;  // Minimum value of pt histogram range
-  Int_t    fHistoPhiBins  ;  // Number of bins in phi axis
-  Float_t  fHistoPhiMax   ;  // Maximum value of phi histogram range
-  Float_t  fHistoPhiMin   ;  // Minimum value of phi histogram range
-  Int_t    fHistoEtaBins  ;  // Number of bins in eta axis
-  Float_t  fHistoEtaMax   ;  // Maximum value of eta histogram range
-  Float_t  fHistoEtaMin   ;  // Minimum value of eta histogram range
-  Int_t    fHistoMassBins ;  // Number of bins in mass axis
-  Float_t  fHistoMassMax  ;  // Maximum value of mass histogram range
-  Float_t  fHistoMassMin  ;  // Minimum value of mass histogram range
-  Int_t    fHistoAsymBins ;  // Number of bins in asymmetry axis
-  Float_t  fHistoAsymMax  ;  // Maximum value of asymmetry histogram range
-  Float_t  fHistoAsymMin  ;  // Minimum value of asymmetry histogram range
-  Int_t    fHistoV0SBins  ;  // Number of bins in V0 signal axis
-  Int_t    fHistoV0SMax   ;  // Maximum value of V0 signal histogram range
-  Int_t    fHistoV0SMin   ;  // Minimum value of V0 signal histogram range
-  Int_t    fHistoV0MBins  ;  // Number of bins in V0 multiplicity axis
-  Int_t    fHistoV0MMax   ;  // Maximum value of V0 multiplicity histogram range
-  Int_t    fHistoV0MMin   ;  // Minimum value of V0 multiplicity histogram range
-  Int_t    fHistoTrMBins  ;  // Number of bins in V0 multiplicity axis
-  Int_t    fHistoTrMMax   ;  // Maximum value of track multiplicity histogram range
-  Int_t    fHistoTrMMin   ;  // Minimum value of track multiplicity histogram range
-  Int_t    fHistoFinePtBins;                  // fine binning for fhAmpId histogram
-  Float_t  fHistoFinePtMax;                   // maximum pt value for fhAmpId histogram
-  Float_t  fHistoFinePtMin;                   // minimum pt value for fhAmpId histogram
-  Int_t    fHistoPOverEBins;                  // p/E histogram number of bins
-  Float_t  fHistoPOverEMax;                   // p/E maximum value
-  Float_t  fHistoPOverEMin;                   // p/E minimum value
-  Int_t    fHistodEdxBins;                    // dEdx histogram number of bins
-  Float_t  fHistodEdxMax;                     // dEdx maximum value
-  Float_t  fHistodEdxMin;                     // dEdx minimum value
-  Int_t    fHistodRBins;                      // dR histogram number of bins
-  Float_t  fHistodRMax;                       // dR maximum value
-  Float_t  fHistodRMin;                       // dR minimum value
-  Int_t    fHistoTimeBins;                    // cell time histogram number of bins
-  Float_t  fHistoTimeMax;                     // cell time maximum value
-  Float_t  fHistoTimeMin;                     // cell time minimum value
-  Int_t    fHistoNClusCellBins;               // number of cells per cluster histogram number of bins
-  Int_t    fHistoNClusCellMax;                // number of cells per cluster maximum value
-  Int_t    fHistoNClusCellMin;                // number of cells per cluster minimum value
-  Int_t    fHistoNCellsBins;                  // number of cells histogram number of bins
-  Int_t    fHistoNCellsMax;                   // number of cells maximum value
-  Int_t    fHistoNCellsMin;                   // number of cells minimum value
-  Int_t    fHistoNClustersBins;               // number of clusters histogram number of bins
-  Int_t    fHistoNClustersMax;                // number of clusters maximum value
-  Int_t    fHistoNClustersMin;                // number of clusters minimum value  
-  Int_t    fHistoRatioBins;                   // ratio histogram number of bins
-  Float_t  fHistoRatioMax;                    // ratio maximum value
-  Float_t  fHistoRatioMin;                    // ratio minimum value
-  Int_t    fHistoVertexDistBins;              // vertex distance histogram number of bins
-  Float_t  fHistoVertexDistMax;               // vertex distance maximum value
-  Float_t  fHistoVertexDistMin;               // vertex distance minimum value 
-  Int_t    fHistoRBins;                       // r =sqrt(x^2+y^2+z^2) (cm) position histogram number of bins
-  Float_t  fHistoRMax;                        // r =sqrt(x^2+y^2+z^2) (cm)  maximum value
-  Float_t  fHistoRMin;                        // r =sqrt(x^2+y^2+z^2) (cm)  minimum value      
-  Int_t    fHistoXBins;                       // x (cm) position histogram number of bins
-  Float_t  fHistoXMax;                        // x (cm) position maximum value
-  Float_t  fHistoXMin;                        // x (cm) position minimum value
-  Int_t    fHistoYBins;                       // y (cm) position histogram number of bins
-  Float_t  fHistoYMax;                        // y (cm) position maximum value
-  Float_t  fHistoYMin;                        // y (cm) position minimum value
-  Int_t    fHistoZBins;                       // z (cm) position histogram number of bins
-  Float_t  fHistoZMax;                        // z (cm) position maximum value
-  Float_t  fHistoZMin;                        // z (cm) position minimum value
-  Int_t    fHistoSSBins;                      // Shower Shape parameter histogram number of bins
-  Float_t  fHistoSSMax;                       // Shower Shape parameter position maximum value
-  Float_t  fHistoSSMin;                       // Shower Shape parameter position minimum value
-  Int_t    fHistoDiffTimeBins;                // Difference cluster pair time parameter histogram number of bins
-  Float_t  fHistoDiffTimeMax;                 // Difference cluster pair time parameter position maximum value
-  Float_t  fHistoDiffTimeMin;                 // Difference cluster pair time parameter position minimum value  
-  
-  ClassDef(AliAnaPartCorrBaseClass,19)
-} ;
-
-
-#endif //ALIANAPARTCORRBASECLASS_H
-
-
-
diff --git a/PWG4/PartCorrBase/AliAnaPartCorrMaker.cxx b/PWG4/PartCorrBase/AliAnaPartCorrMaker.cxx
deleted file mode 100755 (executable)
index 1db7cb9..0000000
+++ /dev/null
@@ -1,360 +0,0 @@
-/**************************************************************************
- * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
- *                                                                        *
- * Author: The ALICE Off-line Project.                                    *
- * Contributors are mentioned in the code where appropriate.              *
- *                                                                        *
- * Permission to use, copy, modify and distribute this software and its   *
- * documentation strictly for non-commercial purposes is hereby granted   *
- * without fee, provided that the above copyright notice appears in all   *
- * copies and that both the copyright notice and this permission notice   *
- * appear in the supporting documentation. The authors make no claims     *
- * about the suitability of this software for any purpose. It is          *
- * provided "as is" without express or implied warranty.                  *
- **************************************************************************/
-/* $Id: $ */
-
-//_________________________________________________________________________
-// Steering class for particle (gamma, hadron) identification and correlation analysis
-// It is called by the task class AliAnalysisTaskParticleCorrelation and it connects the input 
-// (ESD/AOD/MonteCarlo) got with AliCaloTrackReader (produces TClonesArrays of AODs 
-// (TParticles in MC case if requested)), with the 
-// analysis classes that derive from AliAnaPartCorrBaseClass
-//
-// -- Author: Gustavo Conesa (INFN-LNF)
-
-#include <cstdlib>
-
-// --- ROOT system ---
-#include "TClonesArray.h"
-#include "TList.h"
-#include "TH1I.h"
-//#include "Riostream.h"
-//#include <TObjectTable.h>
-
-//---- AliRoot system ---- 
-#include "AliAnalysisManager.h"
-#include "AliVEventHandler.h"
-#include "AliAnaPartCorrBaseClass.h" 
-#include "AliAnaPartCorrMaker.h" 
-
-ClassImp(AliAnaPartCorrMaker)
-
-
-//____________________________________________________________________________
-AliAnaPartCorrMaker::AliAnaPartCorrMaker() : 
-TObject(),
-fOutputContainer(new TList ), fAnalysisContainer(new TList ),
-fMakeHisto(kFALSE), fMakeAOD(kFALSE), fAnaDebug(0), 
-fReader(0), fCaloUtils(0), 
-fCuts(new TList), fhNEvents(0x0), fhTrackMult(0x0)
-{
-  //Default Ctor
-  if(fAnaDebug > 1 ) printf("*** Analysis Maker  Constructor *** \n");
-  
-  //Initialize parameters, pointers and histograms
-  InitParameters();
-}
-
-//____________________________________________________________________________
-AliAnaPartCorrMaker::AliAnaPartCorrMaker(const AliAnaPartCorrMaker & maker) :   
-TObject(),
-fOutputContainer(new TList()), fAnalysisContainer(new TList()), 
-fMakeHisto(maker.fMakeHisto), fMakeAOD(maker.fMakeAOD),
-fAnaDebug(maker.fAnaDebug),
-fReader(),//new AliCaloTrackReader(*maker.fReader)), 
-fCaloUtils(),//(new AliCalorimeterUtils(*maker.fCaloUtils)),
-fCuts(new TList()),fhNEvents(maker.fhNEvents) ,fhTrackMult(maker.fhTrackMult)
-{
-  // cpy ctor
-       
-}
-
-//_________________________________________________________________________
-//AliAnaPartCorrMaker & AliAnaPartCorrMaker::operator = (const AliAnaPartCorrMaker & source)
-//{
-//  // assignment operator
-//  
-//  if(this == &source)return *this;
-//  ((TObject *)this)->operator=(source);
-//  
-//  delete fOutputContainer;   fOutputContainer    = source.fOutputContainer ;
-//  delete fAnalysisContainer; fAnalysisContainer  = source.fAnalysisContainer ;
-//  fAnaDebug           = source.fAnaDebug;
-//  fMakeHisto          = source.fMakeHisto;
-//  fMakeAOD            = source.fMakeAOD;
-//  
-//  delete fReader ;        fReader             = new AliCaloTrackReader(*source.fReader) ;
-//  delete fAODBranchList; fAODBranchList      = source.fAODBranchList;
-//     
-//  return *this;
-//  
-//}
-
-//____________________________________________________________________________
-AliAnaPartCorrMaker::~AliAnaPartCorrMaker() 
-{
-  // Remove all owned pointers.
-//printf("======Delete Maker \n");
-
-//  Do not delete it here, already done somewhere else, need to understand where.      
-//  if (fOutputContainer) {
-//    fOutputContainer->Clear();
-//    delete fOutputContainer ;
-//  }   
-  
-  if (fAnalysisContainer) {
-    fAnalysisContainer->Delete();
-    delete fAnalysisContainer ;
-  }   
-  
-  if (fReader)    delete fReader ;
-  if (fCaloUtils) delete fCaloUtils ;
-
-  if(fCuts){
-         fCuts->Delete();
-         delete fCuts;
-  }
-       
-//     printf("====== Maker deleted \n");
-}
-
-//________________________________________________________________________
-TList * AliAnaPartCorrMaker::GetListOfAnalysisCuts()
-{ 
-
-       // Get the list of the cuts used for the analysis
-       // The list is filled in the maker, called by the task in LocalInit() and posted there
-       //printf("GetListOfAnalysis! \n");
-
-       for(Int_t iana = 0; iana <  fAnalysisContainer->GetEntries(); iana++){
-               AliAnaPartCorrBaseClass * ana =  ((AliAnaPartCorrBaseClass *) fAnalysisContainer->At(iana)) ;
-               TObjString * objstring = ana->GetAnalysisCuts();
-               //printf("analysis %d cuts %p\n",iana,objstring);
-               if(objstring)fCuts->Add(objstring);
-       }
-    //printf("Maker::GetEntries() %d\n",fCuts->GetEntries());
-       return fCuts ;
-  
-}
-
-//________________________________________________________________________
-TList * AliAnaPartCorrMaker::FillAndGetAODBranchList()
-{ 
-       
-       // Get any new output AOD branches from analysis and put them in a list
-       // The list is filled in the maker, and new branch passed to the analysis frame
-       // AliAnalysisTaskPartCorr
-  
-       TList *aodBranchList = fReader->GetAODBranchList() ;
-  
-       for(Int_t iana = 0; iana <  fAnalysisContainer->GetEntries(); iana++){
-               
-               AliAnaPartCorrBaseClass * ana =  ((AliAnaPartCorrBaseClass *) fAnalysisContainer->At(iana)) ;
-               if(ana->NewOutputAOD()) aodBranchList->Add(ana->GetCreateOutputAODBranch());
-    
-       }
-       
-       return aodBranchList ;
-       
-}
-
-//________________________________________________________________________
-TList *AliAnaPartCorrMaker::GetOutputContainer()
-{
-  // Fill the output list of histograms during the CreateOutputObjects stage.
-  
-  //Initialize calorimeters  geometry pointers
-  GetCaloUtils()->InitPHOSGeometry();
-  GetCaloUtils()->InitEMCALGeometry();
-  
-  if(!fAnalysisContainer || fAnalysisContainer->GetEntries()==0){
-    printf("AliAnaPartCorrMaker::GetOutputContainer() - Analysis job list not initialized!!!\n");
-    //abort();
-  }
-  else{
-    const Int_t buffersize = 255;
-    char newname[255];
-    for(Int_t iana = 0; iana <  fAnalysisContainer->GetEntries(); iana++){
-      AliAnaPartCorrBaseClass * ana =  ((AliAnaPartCorrBaseClass *) fAnalysisContainer->At(iana)) ;
-      if(fMakeHisto){// Analysis with histograms as output on
-        //Fill container with appropriate histograms                   
-        TList * templist =  ana ->GetCreateOutputObjects(); 
-        templist->SetOwner(kFALSE); //Owner is fOutputContainer.
-        for(Int_t i = 0; i < templist->GetEntries(); i++){
-          
-          //Add only  to the histogram name the name of the task
-          if(   strcmp((templist->At(i))->ClassName(),"TObjString")   ) {
-            snprintf(newname,buffersize, "%s%s", (ana->GetAddedHistogramsStringToName()).Data(), (templist->At(i))->GetName());  
-            ((TH1*) templist->At(i))->SetName(newname);
-          }
-          //Add histogram to general container
-          fOutputContainer->Add(templist->At(i)) ;
-        }
-        delete templist;
-      }// Analysis with histograms as output on
-    }//Loop on analysis defined
-  }//Analysis list available
-  
-  //General event histograms
-  
-  fhNEvents        = new TH1I("hNEvents", "Number of analyzed events"   , 1 , 0 , 1  ) ;
-  fOutputContainer->Add(fhNEvents);
-  fhTrackMult      = new TH1I("hTrackMult", "Number of tracks per events"   , 2000 , 0 , 2000  ) ;
-  fOutputContainer->Add(fhTrackMult);
-  
-  return fOutputContainer;
-  
-}
-
-//________________________________________________________________________
-void AliAnaPartCorrMaker::Init()
-{  
-  //Init container histograms and other common variables
-  // Fill the output list of histograms during the CreateOutputObjects stage.
-  
-  //Initialize reader
-  GetReader()->Init();
-  GetReader()->SetCaloUtils(GetCaloUtils()); // pass the calo utils pointer to the reader
-       
-  
-  if(!fAnalysisContainer || fAnalysisContainer->GetEntries()==0){
-    printf("AliAnaPartCorrMaker::GetOutputInit() - Analysis job list not initialized!!!\n");
-    //abort();
-  }
-       else{
-
-    for(Int_t iana = 0; iana <  fAnalysisContainer->GetEntries(); iana++){
-      
-      AliAnaPartCorrBaseClass * ana =  ((AliAnaPartCorrBaseClass *) fAnalysisContainer->At(iana)) ;
-      ana->SetReader(fReader); //SetReader for each analysis
-      ana->SetCaloUtils(fCaloUtils); //Set CaloUtils for each analysis
-      
-      ana->Init();
-      
-    }//Loop on analysis defined
-  }//Analysis list available
-}
-
-//____________________________________________________________________________
-void AliAnaPartCorrMaker::InitParameters()
-{      
-  //Init data members
-  
-  fMakeHisto  = kTRUE;
-  fMakeAOD    = kTRUE; 
-  fAnaDebug   = 0; // No debugging info displayed by default
-       
-}
-
-//__________________________________________________________________
-void AliAnaPartCorrMaker::Print(const Option_t * opt) const
-{      
-  //Print some relevant parameters set for the analysis
-       
-  if(! opt)
-    return;
-  
-  printf("***** Print: %s %s ******\n", GetName(), GetTitle() ) ;
-  printf("Debug level                =     %d\n", fAnaDebug) ;
-  printf("Produce Histo              =     %d\n", fMakeHisto) ;
-  printf("Produce AOD                =     %d\n", fMakeAOD) ;
-  printf("Number of analysis tasks   =     %d\n", fAnalysisContainer->GetEntries()) ;
-  if(!strcmp("all",opt)){
-         printf("Print analysis Tasks settings :\n") ;
-         for(Int_t iana = 0; iana<fAnalysisContainer->GetEntries(); iana++){
-                 ((AliAnaPartCorrBaseClass *) fAnalysisContainer->At(iana))->Print("");
-         }
-  
-         printf("Print analysis Reader settings :\n") ;
-         fReader->Print("");
-         printf("Print analysis Calorimeter Utils settings :\n") ;
-         fCaloUtils->Print("");
-  }
-} 
-
-
-//____________________________________________________________________________
-void AliAnaPartCorrMaker::ProcessEvent(const Int_t iEntry, const char * currentFileName){
-  //Process analysis for this event
-  
-  if(fMakeHisto && !fOutputContainer){
-    printf("AliAnaPartCorrMaker::ProcessEvent() - Histograms not initialized\n");
-    abort();
-  }
-       
-  if(fAnaDebug >= 0 ){ 
-               printf("***  AliAnaPartCorrMaker::ProcessEvent() Event %d   ***  \n",iEntry);
-         if(fAnaDebug > 1 ) {
-                 printf("AliAnaPartCorrMaker::ProcessEvent() - Current File Name : %s\n", currentFileName);
-                 //printf("fAODBranchList %p, entries %d\n",fAODBranchList,fAODBranchList->GetEntries());
-         }
-  }
-  
-  //Each event needs an empty branch
-  TList * aodList = fReader->GetAODBranchList();
-  Int_t nAODBranches = aodList->GetEntries();
-  for(Int_t iaod = 0; iaod < nAODBranches; iaod++){
-         TClonesArray *tca = dynamic_cast<TClonesArray*> (aodList->At(iaod));
-         if(tca) tca->Clear("C");
-  }
-  
-  //Set geometry matrices before filling arrays, in case recalibration/position calculation etc is needed
-  fCaloUtils->SetGeometryTransformationMatrices(fReader->GetInputEvent());     
-
-  //Tell the reader to fill the data in the 3 detector lists
-  Bool_t ok = fReader->FillInputEvent(iEntry, currentFileName);
-  if(!ok){
-         if(fAnaDebug >= 1 )printf("*** Skip event *** %d \n",iEntry);
-         return ;
-  }
-       
-  //Magic line to write events to file
-  if(fReader->WriteDeltaAODToFile())AliAnalysisManager::GetAnalysisManager()->GetOutputEventHandler()->SetFillAOD(kTRUE);
-
-  //printf(">>>>>>>>>> BEFORE >>>>>>>>>>>\n");
-  //gObjectTable->Print();
-  //Loop on analysis algorithms
-  if(fAnaDebug > 0 ) printf("*** Begin analysis *** \n");
-  Int_t nana = fAnalysisContainer->GetEntries() ;
-  for(Int_t iana = 0; iana <  nana; iana++){
-    AliAnaPartCorrBaseClass * ana =  ((AliAnaPartCorrBaseClass *) fAnalysisContainer->At(iana)) ; 
-    
-    ana->ConnectInputOutputAODBranches(); //Sets branches for each analysis
-    //Make analysis, create aods in aod branch or AODCaloClusters
-    if(fMakeAOD  )  ana->MakeAnalysisFillAOD()  ;
-    //Make further analysis with aod branch and fill histograms
-    if(fMakeHisto)  ana->MakeAnalysisFillHistograms()  ;
-    
-  }
-       
-  fhNEvents->Fill(0); //Event analyzed
-  fhTrackMult->Fill(fReader->GetTrackMultiplicity()); 
-
-  fReader->ResetLists();
-  
-  //printf(">>>>>>>>>> AFTER >>>>>>>>>>>\n");
-  //gObjectTable->Print();
-       
-  if(fAnaDebug > 0 ) printf("*** End analysis *** \n");
-  
-}
-
-//________________________________________________________________________
-void AliAnaPartCorrMaker::Terminate(TList * outputList)
-{  
-  //Execute Terminate of analysis
-  //Do some final plots.
-  
-  if (!outputList) {
-         Error("Terminate", "No output list");
-         return;
-  }
-       
-  for(Int_t iana = 0; iana <  fAnalysisContainer->GetEntries(); iana++){
-    
-    AliAnaPartCorrBaseClass * ana =  ((AliAnaPartCorrBaseClass *) fAnalysisContainer->At(iana)) ;
-    if(ana->MakePlotsOn())ana->Terminate(outputList);
-    
-  }//Loop on analysis defined
-}
diff --git a/PWG4/PartCorrBase/AliAnaPartCorrMaker.h b/PWG4/PartCorrBase/AliAnaPartCorrMaker.h
deleted file mode 100755 (executable)
index 3f1fbdd..0000000
+++ /dev/null
@@ -1,102 +0,0 @@
-#ifndef ALIANAPARTCORRMAKER_H
-#define ALIANAPARTCORRMAKER_H
-/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
- * See cxx source for full Copyright notice     */
-/* $Id:  $ */
-
-//_________________________________________________________________________
-// Steering class for particle (gamma, hadron) identification and correlation analysis
-// It is called by the task class AliAnalysisTaskParticleCorrelation and it connects the input 
-// (ESD/AOD/MonteCarlo) got with AliCaloTrackReader (produces TObjArrays of AODs 
-// (TParticles in MC case if requested)), with the 
-// analysis classes that derive from AliAnaPartCorrBaseClass
-//
-// -- Author: Gustavo Conesa (INFN-LNF)
-
-// --- ROOT system ---
-class TList; 
-class TClonesArray;
-#include<TObject.h>
-class TH1I;
-
-// --- Analysis system ---
-#include "AliCaloTrackReader.h" 
-#include "AliCalorimeterUtils.h"
-
-class AliAnaPartCorrMaker : public TObject {
-
- public: 
-  AliAnaPartCorrMaker() ; // default ctor
-  virtual ~AliAnaPartCorrMaker() ; //virtual dtor
-  AliAnaPartCorrMaker(const AliAnaPartCorrMaker & maker) ; // cpy ctor
-
- private:
-  AliAnaPartCorrMaker & operator = (const AliAnaPartCorrMaker & ) ;//cpy assignment
-
- public:
-       
-  //Setter and getters
-  TList * GetListOfAnalysisCuts();
-  TList * GetOutputContainer() ;
-
-  TList * FillAndGetAODBranchList();
-  
-  Int_t GetAnaDebug() const  { return fAnaDebug ; }
-  void SetAnaDebug(Int_t d)  { fAnaDebug = d ; }
-       
-  Bool_t AreHistogramsMade() const { return fMakeHisto ; }
-  void SwitchOnHistogramsMaker()   { fMakeHisto = kTRUE ; }
-  void SwitchOffHistogramsMaker()  { fMakeHisto = kFALSE ; }
-  Bool_t AreAODsMade() const { return fMakeAOD ; }
-  void SwitchOnAODsMaker()   { fMakeAOD = kTRUE ; }
-  void SwitchOffAODsMaker()  { fMakeAOD = kFALSE ; }
-       
-  void Terminate(TList * outputList);
-
-  void AddAnalysis(TObject* ana, Int_t n) {
-    if ( fAnalysisContainer) fAnalysisContainer->AddAt(ana,n); 
-    else { printf("AliAnaPartCorrMaker::AddAnalysis() - AnalysisContainer not initialized\n");
-      abort();}
-  }
-  
-  AliCaloTrackReader * GetReader() {if(!fReader) fReader = new AliCaloTrackReader ();return fReader ; }
-  void SetReader(AliCaloTrackReader * reader) { fReader = reader ; }
-       
-  AliCalorimeterUtils * GetCaloUtils() {if(!fCaloUtils) fCaloUtils = new AliCalorimeterUtils(); return fCaloUtils ; }
-  void SetCaloUtils(AliCalorimeterUtils * caloutils) { fCaloUtils = caloutils ; }
-       
-  //Others
-  void Init();
-  void InitParameters();
-  
-  void Print(const Option_t * opt) const;
-  
-  void ProcessEvent(const Int_t iEntry, const char * currentFileName) ;
-  
- private:
-  
-  //General Data members
-  
-  TList * fOutputContainer ;   //! Output histograms container
-  TList * fAnalysisContainer ; // List with analysis pointers
-  Bool_t  fMakeHisto ;         // If true makes final analysis with histograms as output
-  Bool_t  fMakeAOD ;           // If true makes analysis generating AODs
-  Int_t   fAnaDebug;           // Debugging info.
-       
-  AliCaloTrackReader  *  fReader ;     //  Pointer to reader 
-  AliCalorimeterUtils *  fCaloUtils ;  //  Pointer to CalorimeterUtils
-
-  TList * fCuts ;                 //! List with analysis cuts
-
-  TH1I  * fhNEvents;         //! Number of events counter histogram
-  TH1I  * fhTrackMult;       //! Number of tracks per event histogram
-
-  ClassDef(AliAnaPartCorrMaker,8)
-} ;
-
-#endif //ALIANAPARTCORRMAKER_H
-
-
-
diff --git a/PWG4/PartCorrBase/AliHistogramRanges.cxx b/PWG4/PartCorrBase/AliHistogramRanges.cxx
new file mode 100755 (executable)
index 0000000..7c120f3
--- /dev/null
@@ -0,0 +1,129 @@
+/**************************************************************************
+ * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ *                                                                        *
+ * Author: The ALICE Off-line Project.                                    *
+ * Contributors are mentioned in the code where appropriate.              *
+ *                                                                        *
+ * Permission to use, copy, modify and distribute this software and its   *
+ * documentation strictly for non-commercial purposes is hereby granted   *
+ * without fee, provided that the above copyright notice appears in all   *
+ * copies and that both the copyright notice and this permission notice   *
+ * appear in the supporting documentation. The authors make no claims     *
+ * about the suitability of this software for any purpose. It is          *
+ * provided "as is" without express or implied warranty.                  *
+ **************************************************************************/
+
+//_________________________________________________________________________
+// Class containing histogram settings:
+//    - Number of bins
+//    - Min and max of range
+//
+//-- Author: Gustavo Conesa (LPSC-Grenoble)
+//
+
+#include "TMath.h"
+
+#include "AliHistogramRanges.h"
+
+ClassImp(AliHistogramRanges)
+
+
+//_______________________________________________
+AliHistogramRanges::AliHistogramRanges() : 
+TObject(), 
+fHistoPtBins(0),              fHistoPtMax(0.),             fHistoPtMin(0.),
+fHistoPhiBins(0),             fHistoPhiMax(0.),            fHistoPhiMin(0.),
+fHistoEtaBins(0),             fHistoEtaMax(0.),            fHistoEtaMin(0.),
+fHistoMassBins(0),            fHistoMassMax(0.),           fHistoMassMin(0.),
+fHistoAsymBins(0),            fHistoAsymMax(0.),           fHistoAsymMin(0.),
+fHistoV0SBins(0),             fHistoV0SMax(0),             fHistoV0SMin(0),
+fHistoV0MBins(0),             fHistoV0MMax(0),             fHistoV0MMin(0),
+fHistoTrMBins(0),             fHistoTrMMax(0),             fHistoTrMMin(0),
+fHistoFinePtBins(1000),       fHistoFinePtMax(5.),         fHistoFinePtMin(0.),
+fHistoPOverEBins(100),        fHistoPOverEMax(100.),       fHistoPOverEMin(0.),
+fHistodEdxBins(100),          fHistodEdxMax(100.),         fHistodEdxMin(0.),
+fHistodRBins(100),            fHistodRMax(100.),           fHistodRMin(0.),
+fHistoTimeBins(100),          fHistoTimeMax(100.),         fHistoTimeMin(0.),
+fHistoNClusCellBins(100),     fHistoNClusCellMax(100),     fHistoNClusCellMin(0),
+fHistoNCellsBins(100),        fHistoNCellsMax(100),        fHistoNCellsMin(0),
+fHistoNClustersBins(100),     fHistoNClustersMax(100),     fHistoNClustersMin(0),
+fHistoRatioBins(100),         fHistoRatioMax(100.),        fHistoRatioMin(0.),
+fHistoVertexDistBins(100),    fHistoVertexDistMax(100.),   fHistoVertexDistMin(0.),
+fHistoRBins(100),             fHistoRMax(1000),            fHistoRMin(-1000),
+fHistoXBins(100),             fHistoXMax(1000),            fHistoXMin(-1000),
+fHistoYBins(100),             fHistoYMax(1000),            fHistoYMin(-1000),
+fHistoZBins(100),             fHistoZMax(1000),            fHistoZMin(-1000),
+fHistoSSBins(0),              fHistoSSMax(0),              fHistoSSMin(0),
+fHistoDiffTimeBins(0),        fHistoDiffTimeMax(0),        fHistoDiffTimeMin(0)
+{
+  //Default Ctor
+  
+  //Initialize parameters
+  InitParameters();
+  
+}
+
+//_______________________________________
+void AliHistogramRanges::InitParameters()
+{ 
+  //Initialize histogram parameters
+  
+  fHistoPtBins           = 240 ;  fHistoPtMax           = 120   ; fHistoPtMin           = 0.  ;
+  fHistoPhiBins          = 120 ;  fHistoPhiMax          = TMath::TwoPi(); fHistoPhiMin  = 0.  ;
+  fHistoEtaBins          = 100 ;  fHistoEtaMax          =  1    ; fHistoEtaMin          = -1  ;
+  fHistoMassBins         = 200 ;  fHistoMassMax         = 1.    ; fHistoMassMin         = 0.  ;
+  fHistoAsymBins         = 10  ;  fHistoAsymMax         = 1.    ; fHistoAsymMin         = 0.  ;
+  fHistoV0SBins          = 100 ;  fHistoV0SMax          = 10000 ; fHistoV0SMin          = 0   ;
+  fHistoV0MBins          = 100;   fHistoV0MMax          = 10000 ; fHistoV0MMin          = 0   ;
+  fHistoTrMBins          = 100 ;  fHistoTrMMax          = 2000  ; fHistoTrMMin          = 0   ;
+  fHistoPOverEBins       = 100 ;  fHistoPOverEMax       = 10.   ; fHistoPOverEMin       = 0.  ;
+  fHistodEdxBins         = 200 ;  fHistodEdxMax         = 400.  ; fHistodEdxMin         = 0.  ;  
+  fHistodRBins           = 300 ;  fHistodRMax           = 3.15  ; fHistodRMin           = 0.  ;
+  fHistoTimeBins         = 1000;  fHistoTimeMax         = 1.e3  ; fHistoTimeMin         = 0.  ;//ns
+  fHistoNClusCellBins    = 200 ;  fHistoNClusCellMax    = 200   ; fHistoNClusCellMin    = 0   ;
+  fHistoNCellsBins       = 300 ;  fHistoNCellsMax       = 300   ; fHistoNCellsMin       = 0   ;
+  fHistoNClustersBins    = 50  ;  fHistoNClustersMax    = 50    ; fHistoNClustersMin    = 0   ;
+  fHistoRatioBins        = 200 ;  fHistoRatioMax        = 2     ; fHistoRatioMin        = 0.  ;
+  fHistoVertexDistBins   = 100 ;  fHistoVertexDistMax   = 500.  ; fHistoVertexDistMin   = 0.  ;
+  fHistoRBins            = 100 ;  fHistoRMax            = 500   ; fHistoRMin            = -500;//cm
+  fHistoXBins            = 100 ;  fHistoXMax            = 500   ; fHistoXMin            = -500;//cm
+  fHistoYBins            = 100 ;  fHistoYMax            = 500   ; fHistoYMin            = -500;//cm
+  fHistoZBins            = 100 ;  fHistoZMax            = 600   ; fHistoZMin            = -500;//cm
+  fHistoSSBins           = 500 ;  fHistoSSMax           = 5     ; fHistoSSMin           = 0    ;  
+  fHistoDiffTimeBins     = 800 ;  fHistoDiffTimeMax     = 400   ; fHistoDiffTimeMin     = -400;// ns
+  
+}
+
+//________________________________________________________
+void AliHistogramRanges::Print(const Option_t * /*opt*/) const
+{
+  //Print some relevant parameters set for the analysis
+       
+  printf("Histograms: %3.1f < pT  < %3.1f,  Nbin = %d\n", fHistoPtMin,  fHistoPtMax,  fHistoPtBins);
+  printf("Histograms: %3.1f < phi < %3.1f, Nbin = %d\n", fHistoPhiMin, fHistoPhiMax, fHistoPhiBins);
+  printf("Histograms: %3.1f < eta < %3.1f, Nbin = %d\n", fHistoEtaMin, fHistoEtaMax, fHistoEtaBins);
+  printf("Histograms: %3.1f < mass < %3.1f, Nbin = %d\n", fHistoMassMin, fHistoMassMax, fHistoMassBins);
+  printf("Histograms: %3.1f < asymmetry < %3.1f, Nbin = %d\n", fHistoAsymMin, fHistoAsymMax, fHistoAsymBins);
+  printf("Histograms: %d < V0 Signal < %d, Nbin = %d\n", fHistoV0SMin, fHistoV0SMax, fHistoV0SBins);
+  printf("Histograms: %d < V0 Mult < %d, Nbin = %d\n", fHistoV0MMin, fHistoV0MMax, fHistoV0MBins);
+  printf("Histograms: %d < Track Mult < %d, Nbin = %d\n", fHistoTrMMin, fHistoTrMMax, fHistoTrMBins);
+  printf("Histograms: %3.1f < p/E  < %3.1f, Nbin = %d\n", fHistoPOverEMin, fHistoPOverEMax, fHistoPOverEBins);
+  printf("Histograms: %3.1f < dEdx < %3.1f, Nbin = %d\n", fHistodEdxMin,   fHistodEdxMax,   fHistodEdxBins);
+  printf("Histograms: %3.1f < dR (track cluster)   < %3.1f, Nbin = %d\n", fHistodRMin,     fHistodRMax,     fHistodRBins);
+  printf("Histograms: %3.1f < R=sqrt{x^2+y^2}    < %3.1f, Nbin = %d\n", fHistoRMin,      fHistoRMax,      fHistoRBins);
+  printf("Histograms: %3.1f < X    < %3.1f, Nbin = %d\n", fHistoXMin,      fHistoXMax,      fHistoXBins);
+  printf("Histograms: %3.1f < Y    < %3.1f, Nbin = %d\n", fHistoYMin,      fHistoYMax,      fHistoYBins);
+  printf("Histograms: %3.1f < Z    < %3.1f, Nbin = %d\n", fHistoZMin,      fHistoZMax,      fHistoZBins);
+  printf("Histograms: %g < Time < %g, Nbin = %d\n"      , fHistoTimeMin,   fHistoTimeMax,   fHistoTimeBins);
+  printf("Histograms: %d < N cells per cluster    < %d, Nbin = %d\n", fHistoNClusCellMin,   fHistoNClusCellMax,   fHistoNClusCellBins);
+  printf("Histograms: %d < N cells   < %d, Nbin = %d\n"             , fHistoNCellsMin,      fHistoNCellsMax,      fHistoNCellsBins);
+  printf("Histograms: %d < N clusters   < %d, Nbin = %d\n"          , fHistoNClustersMin,   fHistoNClustersMax,   fHistoNClustersBins);
+  printf("Histograms: %3.1f < Ratio< %3.1f, Nbin = %d\n", fHistoRatioMin,  fHistoRatioMax,  fHistoRatioBins);
+  printf("Histograms: %3.1f < Vertex Distance < %3.1f, Nbin = %d\n", fHistoVertexDistMin, fHistoVertexDistMax, fHistoVertexDistBins);
+       
+  printf("    \n") ;
+  
+} 
+
+
+
diff --git a/PWG4/PartCorrBase/AliHistogramRanges.h b/PWG4/PartCorrBase/AliHistogramRanges.h
new file mode 100755 (executable)
index 0000000..6bea141
--- /dev/null
@@ -0,0 +1,334 @@
+#ifndef ALIHISTOGRAMRANGES_H
+#define ALIHISTOGRAMRANGES_H
+
+/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * See cxx source for full Copyright notice     */
+
+//_________________________________________________________________________
+// Class containing histogram settings:
+//    - Number of bins
+//    - Min and max of range
+//
+//-- Author: Gustavo Conesa (LPSC-Grenoble)
+//
+
+//ROOT
+#include <TObject.h>
+
+class AliHistogramRanges : public TObject {
+       
+public:   
+  
+  AliHistogramRanges() ;              // default ctor
+  virtual ~AliHistogramRanges() { ; } // dtor
+  
+  void InitParameters() ;
+  
+  void Print(const Option_t * ) const ;
+  
+  //Pt, Energy 
+  
+  Int_t   GetHistoPtBins()              const { return fHistoPtBins          ; }
+  Float_t GetHistoPtMin()               const { return fHistoPtMin           ; }
+  Float_t GetHistoPtMax()               const { return fHistoPtMax           ; }
+  
+  void    SetHistoPtRangeAndNBins(Float_t min, Float_t max, Int_t n) {
+    fHistoPtBins         = n ; fHistoPtMax         = max ; fHistoPtMin         = min ; }
+  
+  Int_t   GetHistoEnergyBins()          const { return fHistoPtBins          ; }
+  Float_t GetHistoEnergyMin()           const { return fHistoPtMin           ; }
+  Float_t GetHistoEnergyMax()           const { return fHistoPtMax           ; }
+  
+  void    SetHistoEnergyRangeAndNBins(Float_t min, Float_t max, Int_t n) {
+    SetHistoPtRangeAndNBins(min, max, n) ; }
+  
+  Int_t   GetHistoFinePtBins()          const { return fHistoFinePtBins      ; }
+  Float_t GetHistoFinePtMin()           const { return fHistoFinePtMin       ; }
+  Float_t GetHistoFinePtMax()           const { return fHistoFinePtMax       ; }       
+  
+  void SetHistoFinePtRangeAndNBins      (Float_t min, Float_t max, Int_t n) {
+    fHistoFinePtBins     = n ; fHistoFinePtMax     = max ; fHistoFinePtMin     = min ; }
+  
+  //Azimuthal angle
+  
+  Int_t   GetHistoPhiBins()             const { return fHistoPhiBins         ; }
+  Float_t GetHistoPhiMin()              const { return fHistoPhiMin          ; }
+  Float_t GetHistoPhiMax()              const { return fHistoPhiMax          ; }
+  
+  void    SetHistoPhiRangeAndNBins(Float_t min, Float_t max, Int_t n) {
+    fHistoPhiBins        = n ; fHistoPhiMax        = max ; fHistoPhiMin        = min ; }
+  
+  //Pseudorapidity-rapidity
+  
+  Int_t   GetHistoEtaBins()             const { return fHistoEtaBins         ; }
+  Float_t GetHistoEtaMin()              const { return fHistoEtaMin          ; }
+  Float_t GetHistoEtaMax()              const { return fHistoEtaMax          ; }
+  
+  void    SetHistoEtaRangeAndNBins(Float_t min, Float_t max, Int_t n) {
+    fHistoEtaBins        = n ; fHistoEtaMax         = max ; fHistoEtaMin       = min ; }
+  
+  //Mass
+       
+  Int_t   GetHistoMassBins()            const { return fHistoMassBins        ; }
+  Float_t GetHistoMassMin()             const { return fHistoMassMin         ; }
+  Float_t GetHistoMassMax()             const { return fHistoMassMax         ; }
+       
+  void    SetHistoMassRangeAndNBins(Float_t min, Float_t max, Int_t n) {
+    fHistoMassBins       = n ; fHistoMassMax       = max ; fHistoMassMin       = min ; }
+  
+  //Asymetry
+       
+  Int_t   GetHistoAsymmetryBins()        const { return fHistoAsymBins       ; }
+  Float_t GetHistoAsymmetryMin()         const { return fHistoAsymMin        ; }
+  Float_t GetHistoAsymmetryMax()         const { return fHistoAsymMax        ; }       
+  
+  void    SetHistoAsymmetryRangeAndNBins(Float_t min, Float_t max, Int_t n) {
+    fHistoAsymBins       = n ; fHistoAsymMax       = max ; fHistoAsymMin       = min ; }
+  
+  //VZero
+  
+  Int_t   GetHistoV0SignalBins()         const { return fHistoV0SBins        ; }
+  Int_t   GetHistoV0SignalMin()          const { return fHistoV0SMin         ; }
+  Int_t   GetHistoV0SignalMax()          const { return fHistoV0SMax         ; }
+       
+  void    SetHistoV0SignalRangeAndNBins(Int_t min, Int_t max, Int_t n) {
+    fHistoV0SBins        = n ; fHistoV0SMax        = max ; fHistoV0SMin        = min ; }
+  
+  Int_t   GetHistoV0MultiplicityBins()   const { return fHistoV0MBins        ; }
+  Int_t   GetHistoV0MultiplicityMin()    const { return fHistoV0MMin         ; }
+  Int_t   GetHistoV0MultiplicityMax()    const { return fHistoV0MMax         ; }
+  
+  void    SetHistoV0MultiplicityRangeAndNBins(Int_t min, Int_t max, Int_t n) {
+    fHistoV0MBins        = n ; fHistoV0MMax        = max ; fHistoV0MMin        = min ; }
+  
+  // Track multiplicity
+  
+  Int_t   GetHistoTrackMultiplicityBins() const { return fHistoTrMBins      ; }
+  Int_t   GetHistoTrackMultiplicityMin()  const { return fHistoTrMMin       ; }
+  Int_t   GetHistoTrackMultiplicityMax()  const { return fHistoTrMMax       ; }
+  
+  void    SetHistoTrackMultiplicityRangeAndNBins(Int_t min, Int_t max, Int_t n) {
+    fHistoTrMBins        = n ; fHistoTrMMax        = max ; fHistoTrMMin        = min ; }
+  
+  // dEdx
+  
+  Int_t   GetHistodEdxBins()             const { return fHistodEdxBins       ; }
+  Float_t GetHistodEdxMin()              const { return fHistodEdxMin        ; }
+  Float_t GetHistodEdxMax()              const { return fHistodEdxMax        ; }       
+  
+  void    SetHistodEdxRangeAndNBins        (Float_t min, Float_t max, Int_t n) {
+    fHistodEdxBins       = n ; fHistodEdxMax       = max ; fHistodEdxMin       = min ; }
+  
+  // E over p
+  
+  Int_t   GetHistoPOverEBins()           const { return fHistoPOverEBins     ; }
+  Float_t GetHistoPOverEMin()            const { return fHistoPOverEMin      ; }
+  Float_t GetHistoPOverEMax()            const { return fHistoPOverEMax      ; }
+       
+  void    SetHistoPOverERangeAndNBins      (Float_t min, Float_t max, Int_t n) {
+    fHistoPOverEBins     = n ; fHistoPOverEMax     = max ; fHistoPOverEMin     = min ; }
+  
+  // Number of cells per clusters
+  
+  Int_t   GetHistoNClusterCellBins()     const { return fHistoNClusCellBins  ; }
+  Int_t   GetHistoNClusterCellMin()      const { return fHistoNClusCellMin   ; }
+  Int_t   GetHistoNClusterCellMax()      const { return fHistoNClusCellMax   ; }       
+  void    SetHistoNClusterCellRangeAndNBins(Int_t   min, Int_t   max, Int_t n) {
+    fHistoNClusCellBins  = n ; fHistoNClusCellMax  = max ; fHistoNClusCellMin  = min ; }
+  
+  // Number of clusters
+  
+  Int_t   GetHistoNClustersBins()        const { return fHistoNClustersBins  ; }
+  Int_t   GetHistoNClustersMin()         const { return fHistoNClustersMin   ; }
+  Int_t   GetHistoNClustersMax()         const { return fHistoNClustersMax   ; }       
+  
+  void    SetHistoNClustersRangeAndNBins   (Int_t   min, Int_t   max, Int_t n) {
+    fHistoNClustersBins  = n ; fHistoNClustersMax  = max ; fHistoNClustersMin  = min ; }
+
+  // Number of cells 
+  
+  Int_t   GetHistoNCellsBins()           const { return fHistoNCellsBins     ; }
+  Int_t   GetHistoNCellsMin()            const { return fHistoNCellsMin      ; }
+  Int_t   GetHistoNCellsMax()            const { return fHistoNCellsMax      ; }       
+  
+  void    SetHistoNCellsRangeAndNBins      (Int_t   min, Int_t   max, Int_t n) {
+    fHistoNCellsBins     = n ; fHistoNCellsMax     = max ; fHistoNCellsMin     = min ; }
+
+  // dR
+  
+  Int_t   GetHistodRBins()               const { return fHistodRBins         ; }
+  Float_t GetHistodRMin()                const { return fHistodRMin          ; }
+  Float_t GetHistodRMax()                const { return fHistodRMax          ; }       
+  
+  void SetHistodRRangeAndNBins          (Float_t min, Float_t max, Int_t n) {
+    fHistodRBins         = n ; fHistodRMax         = max ; fHistodRMin         = min ; }
+
+  // Ratio
+  
+  Int_t   GetHistoRatioBins()            const { return fHistoRatioBins      ; }
+  Float_t GetHistoRatioMin()             const { return fHistoRatioMin       ; }
+  Float_t GetHistoRatioMax()             const { return fHistoRatioMax       ; }       
+  
+  void    SetHistoRatioRangeAndNBins       (Float_t min, Float_t max, Int_t n) {
+    fHistoRatioBins      = n ; fHistoRatioMax      = max ; fHistoRatioMin      = min ; }
+
+  // Vertex
+  
+  Int_t   GetHistoVertexDistBins()       const { return fHistoVertexDistBins ; }
+  Float_t GetHistoVertexDistMin()        const { return fHistoVertexDistMin  ; }
+  Float_t GetHistoVertexDistMax()        const { return fHistoVertexDistMax  ; }       
+  
+  void    SetHistoVertexDistRangeAndNBins  (Float_t min, Float_t max, Int_t n) { 
+    fHistoVertexDistBins = n ; fHistoVertexDistMax = max ; fHistoVertexDistMin = min ; }
+
+  
+  // R =sqrt(x^2+y^2+z^2) (cm)
+  
+  Int_t   GetHistoRBins()                const { return fHistoRBins          ; }
+  Float_t GetHistoRMin()                 const { return fHistoRMin           ; }
+  Float_t GetHistoRMax()                 const { return fHistoRMax           ; }         
+  
+  void    SetHistoRRangeAndNBins           (Float_t min, Float_t max, Int_t n) {
+    fHistoRBins         = n ; fHistoRMax           = max ; fHistoRMin          = min ; }
+  
+  // X position
+  
+  Int_t   GetHistoXBins()                const { return fHistoXBins          ; }
+  Float_t GetHistoXMin()                 const { return fHistoXMin           ; }
+  Float_t GetHistoXMax()                 const { return fHistoXMax           ; }
+  
+  void    SetHistoXRangeAndNBins           (Float_t min, Float_t max, Int_t n) {
+    fHistoXBins          = n ; fHistoXMax          = max ; fHistoXMin          = min ; }
+
+  // Y position
+  
+  Int_t   GetHistoYBins()                const { return fHistoYBins          ; }
+  Float_t GetHistoYMin()                 const { return fHistoYMin           ; }
+  Float_t GetHistoYMax()                 const { return fHistoYMax           ; }       
+  
+  void    SetHistoYRangeAndNBins           (Float_t min, Float_t max, Int_t n) {
+    fHistoYBins          = n ; fHistoYMax          = max ; fHistoYMin          = min ; }
+  
+  // Z position
+  
+  Int_t   GetHistoZBins()                const { return fHistoZBins          ; }
+  Float_t GetHistoZMin()                 const { return fHistoZMin           ; }
+  Float_t GetHistoZMax()                 const { return fHistoZMax           ; }       
+       
+  void    SetHistoZRangeAndNBins           (Float_t min, Float_t max, Int_t n) {
+    fHistoZBins         = n ; fHistoZMax           = max ; fHistoZMin          = min ; }
+
+  // Shower shape parameters
+  
+  Int_t   GetHistoShowerShapeBins()      const { return fHistoSSBins         ; }
+  Float_t GetHistoShowerShapeMin()       const { return fHistoSSMin          ; }
+  Float_t GetHistoShowerShapeMax()       const { return fHistoSSMax          ; }       
+  
+  void    SetHistoShowerShapeRangeAndNBins (Float_t min, Float_t max, Int_t n) {
+    fHistoSSBins        = n ; fHistoSSMax          = max ; fHistoSSMin        = min ; }
+
+  // Time
+  
+  Int_t   GetHistoTimeBins()             const { return fHistoTimeBins       ; }
+  Float_t GetHistoTimeMin()              const { return fHistoTimeMin        ; }
+  Float_t GetHistoTimeMax()              const { return fHistoTimeMax        ; }       
+  
+  void SetHistoTimeRangeAndNBins        (Float_t min, Float_t max, Int_t n) {
+    fHistoTimeBins       = n ; fHistoTimeMax       = max ; fHistoTimeMin       = min ; }         
+  
+  // Cluster time difference
+  
+  Int_t   GetHistoDiffTimeBins()         const { return fHistoDiffTimeBins   ; }
+       Float_t GetHistoDiffTimeMin()          const { return fHistoDiffTimeMin    ; }
+       Float_t GetHistoDiffTimeMax()          const { return fHistoDiffTimeMax    ; }  
+   
+  void         SetHistoDiffTimeRangeAndNBins(Float_t min, Float_t max, Int_t n) {
+    fHistoDiffTimeBins   = n ; fHistoDiffTimeMax   = max ; fHistoDiffTimeMin   = min   ; }
+  
+private:    
+  
+  Int_t    fHistoPtBins   ;                   // Number of bins in pt axis
+  Float_t  fHistoPtMax    ;                   // Maximum value of pt histogram range
+  Float_t  fHistoPtMin    ;                   // Minimum value of pt histogram range
+  Int_t    fHistoPhiBins  ;                   // Number of bins in phi axis
+  Float_t  fHistoPhiMax   ;                   // Maximum value of phi histogram range
+  Float_t  fHistoPhiMin   ;                   // Minimum value of phi histogram range
+  Int_t    fHistoEtaBins  ;                   // Number of bins in eta axis
+  Float_t  fHistoEtaMax   ;                   // Maximum value of eta histogram range
+  Float_t  fHistoEtaMin   ;                   // Minimum value of eta histogram range
+  Int_t    fHistoMassBins ;                   // Number of bins in mass axis
+  Float_t  fHistoMassMax  ;                   // Maximum value of mass histogram range
+  Float_t  fHistoMassMin  ;                   // Minimum value of mass histogram range
+  Int_t    fHistoAsymBins ;                   // Number of bins in asymmetry axis
+  Float_t  fHistoAsymMax  ;                   // Maximum value of asymmetry histogram range
+  Float_t  fHistoAsymMin  ;                   // Minimum value of asymmetry histogram range
+  Int_t    fHistoV0SBins  ;                   // Number of bins in V0 signal axis
+  Int_t    fHistoV0SMax   ;                   // Maximum value of V0 signal histogram range
+  Int_t    fHistoV0SMin   ;                   // Minimum value of V0 signal histogram range
+  Int_t    fHistoV0MBins  ;                   // Number of bins in V0 multiplicity axis
+  Int_t    fHistoV0MMax   ;                   // Maximum value of V0 multiplicity histogram range
+  Int_t    fHistoV0MMin   ;                   // Minimum value of V0 multiplicity histogram range
+  Int_t    fHistoTrMBins  ;                   // Number of bins in V0 multiplicity axis
+  Int_t    fHistoTrMMax   ;                   // Maximum value of track multiplicity histogram range
+  Int_t    fHistoTrMMin   ;                   // Minimum value of track multiplicity histogram range
+  Int_t    fHistoFinePtBins;                  // fine binning for fhAmpId histogram
+  Float_t  fHistoFinePtMax;                   // maximum pt value for fhAmpId histogram
+  Float_t  fHistoFinePtMin;                   // minimum pt value for fhAmpId histogram
+  Int_t    fHistoPOverEBins;                  // p/E histogram number of bins
+  Float_t  fHistoPOverEMax;                   // p/E maximum value
+  Float_t  fHistoPOverEMin;                   // p/E minimum value
+  Int_t    fHistodEdxBins;                    // dEdx histogram number of bins
+  Float_t  fHistodEdxMax;                     // dEdx maximum value
+  Float_t  fHistodEdxMin;                     // dEdx minimum value
+  Int_t    fHistodRBins;                      // dR histogram number of bins
+  Float_t  fHistodRMax;                       // dR maximum value
+  Float_t  fHistodRMin;                       // dR minimum value
+  Int_t    fHistoTimeBins;                    // cell time histogram number of bins
+  Float_t  fHistoTimeMax;                     // cell time maximum value
+  Float_t  fHistoTimeMin;                     // cell time minimum value
+  Int_t    fHistoNClusCellBins;               // number of cells per cluster histogram number of bins
+  Int_t    fHistoNClusCellMax;                // number of cells per cluster maximum value
+  Int_t    fHistoNClusCellMin;                // number of cells per cluster minimum value
+  Int_t    fHistoNCellsBins;                  // number of cells histogram number of bins
+  Int_t    fHistoNCellsMax;                   // number of cells maximum value
+  Int_t    fHistoNCellsMin;                   // number of cells minimum value
+  Int_t    fHistoNClustersBins;               // number of clusters histogram number of bins
+  Int_t    fHistoNClustersMax;                // number of clusters maximum value
+  Int_t    fHistoNClustersMin;                // number of clusters minimum value  
+  Int_t    fHistoRatioBins;                   // ratio histogram number of bins
+  Float_t  fHistoRatioMax;                    // ratio maximum value
+  Float_t  fHistoRatioMin;                    // ratio minimum value
+  Int_t    fHistoVertexDistBins;              // vertex distance histogram number of bins
+  Float_t  fHistoVertexDistMax;               // vertex distance maximum value
+  Float_t  fHistoVertexDistMin;               // vertex distance minimum value 
+  Int_t    fHistoRBins;                       // r =sqrt(x^2+y^2+z^2) (cm) position histogram number of bins
+  Float_t  fHistoRMax;                        // r =sqrt(x^2+y^2+z^2) (cm)  maximum value
+  Float_t  fHistoRMin;                        // r =sqrt(x^2+y^2+z^2) (cm)  minimum value      
+  Int_t    fHistoXBins;                       // x (cm) position histogram number of bins
+  Float_t  fHistoXMax;                        // x (cm) position maximum value
+  Float_t  fHistoXMin;                        // x (cm) position minimum value
+  Int_t    fHistoYBins;                       // y (cm) position histogram number of bins
+  Float_t  fHistoYMax;                        // y (cm) position maximum value
+  Float_t  fHistoYMin;                        // y (cm) position minimum value
+  Int_t    fHistoZBins;                       // z (cm) position histogram number of bins
+  Float_t  fHistoZMax;                        // z (cm) position maximum value
+  Float_t  fHistoZMin;                        // z (cm) position minimum value
+  Int_t    fHistoSSBins;                      // Shower Shape parameter histogram number of bins
+  Float_t  fHistoSSMax;                       // Shower Shape parameter position maximum value
+  Float_t  fHistoSSMin;                       // Shower Shape parameter position minimum value
+  Int_t    fHistoDiffTimeBins;                // Difference cluster pair time parameter histogram number of bins
+  Float_t  fHistoDiffTimeMax;                 // Difference cluster pair time parameter position maximum value
+  Float_t  fHistoDiffTimeMin;                 // Difference cluster pair time parameter position minimum value  
+  
+  AliHistogramRanges(              const AliHistogramRanges & h) ; // cpy ctor
+  AliHistogramRanges & operator = (const AliHistogramRanges & h) ; // cpy assignment
+  
+  ClassDef(AliHistogramRanges,1)
+} ;
+
+
+#endif //ALIHISTOGRAMRANGES_H
+
+
+
index 2ab848d1094389570c0b506138357bbda6348ce9..157d50e8e9574de290a4e67bb7446019f4566657 100755 (executable)
@@ -12,7 +12,6 @@
  * about the suitability of this software for any purpose. It is          *
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
-/* $Id: $ */
 
 //_________________________________________________________________________
 // Class to check results from simulations or reconstructed real data. 
@@ -59,7 +58,7 @@ ClassImp(AliAnaCalorimeterQA)
 
 //________________________________________
 AliAnaCalorimeterQA::AliAnaCalorimeterQA() : 
-AliAnaPartCorrBaseClass(),             fCalorimeter(""), 
+AliAnaCaloTrackCorrBaseClass(),             fCalorimeter(""), 
 
 //Switches
 fFillAllPosHisto(kFALSE),              fFillAllPosHisto2(kTRUE), 
@@ -1462,30 +1461,30 @@ TList * AliAnaCalorimeterQA::GetCreateOutputObjects()
   outputContainer->SetName("QAHistos") ; 
   
   //Histograms
-  Int_t nptbins     = GetHistoPtBins();                Float_t ptmax     = GetHistoPtMax();           Float_t ptmin     = GetHistoPtMin();
-  Int_t nfineptbins = GetHistoFinePtBins();        Float_t ptfinemax = GetHistoFinePtMax();       Float_t ptfinemin = GetHistoFinePtMin();
-  Int_t nphibins    = GetHistoPhiBins();           Float_t phimax    = GetHistoPhiMax();          Float_t phimin    = GetHistoPhiMin();
-  Int_t netabins    = GetHistoEtaBins();          Float_t etamax    = GetHistoEtaMax();          Float_t etamin    = GetHistoEtaMin(); 
-  Int_t nmassbins   = GetHistoMassBins();         Float_t massmax   = GetHistoMassMax();              Float_t massmin   = GetHistoMassMin();
-  Int_t nasymbins   = GetHistoAsymmetryBins();    Float_t asymmax   = GetHistoAsymmetryMax();    Float_t asymmin   = GetHistoAsymmetryMin();
-  Int_t nPoverEbins = GetHistoPOverEBins();       Float_t pOverEmax = GetHistoPOverEMax();       Float_t pOverEmin = GetHistoPOverEMin();
-  Int_t ndedxbins   = GetHistodEdxBins();         Float_t dedxmax   = GetHistodEdxMax();         Float_t dedxmin   = GetHistodEdxMin();
-  Int_t ndRbins     = GetHistodRBins();           Float_t dRmax     = GetHistodRMax();           Float_t dRmin     = GetHistodRMin();
-  Int_t ntimebins   = GetHistoTimeBins();         Float_t timemax   = GetHistoTimeMax();         Float_t timemin   = GetHistoTimeMin();       
-  Int_t nclbins     = GetHistoNClustersBins();    Int_t   nclmax    = GetHistoNClustersMax();    Int_t   nclmin    = GetHistoNClustersMin(); 
-  Int_t ncebins     = GetHistoNCellsBins();       Int_t   ncemax    = GetHistoNCellsMax();       Int_t   ncemin    = GetHistoNCellsMin(); 
-  Int_t nceclbins   = GetHistoNClusterCellBins(); Int_t   nceclmax  = GetHistoNClusterCellMax(); Int_t   nceclmin  = GetHistoNClusterCellMin(); 
-  Int_t nvdistbins  = GetHistoVertexDistBins();   Float_t vdistmax  = GetHistoVertexDistMax();   Float_t vdistmin  = GetHistoVertexDistMin();
-  Int_t rbins       = GetHistoRBins();            Float_t rmax      = GetHistoRMax();            Float_t rmin      = GetHistoRMin(); 
-  Int_t xbins       = GetHistoXBins();            Float_t xmax      = GetHistoXMax();            Float_t xmin      = GetHistoXMin(); 
-  Int_t ybins       = GetHistoYBins();            Float_t ymax      = GetHistoYMax();            Float_t ymin      = GetHistoYMin(); 
-  Int_t zbins       = GetHistoZBins();            Float_t zmax      = GetHistoZMax();            Float_t zmin      = GetHistoZMin(); 
-  Int_t ssbins      = GetHistoShowerShapeBins();  Float_t ssmax     = GetHistoShowerShapeMax();  Float_t ssmin     = GetHistoShowerShapeMin();
-  Int_t tdbins      = GetHistoDiffTimeBins() ;    Float_t tdmax     = GetHistoDiffTimeMax();     Float_t tdmin     = GetHistoDiffTimeMin();
-  
-  Int_t nv0sbins    = GetHistoV0SignalBins();          Int_t nv0smax = GetHistoV0SignalMax();          Int_t nv0smin = GetHistoV0SignalMin(); 
-  Int_t nv0mbins    = GetHistoV0MultiplicityBins();    Int_t nv0mmax = GetHistoV0MultiplicityMax();    Int_t nv0mmin = GetHistoV0MultiplicityMin(); 
-  Int_t ntrmbins    = GetHistoTrackMultiplicityBins(); Int_t ntrmmax = GetHistoTrackMultiplicityMax(); Int_t ntrmmin = GetHistoTrackMultiplicityMin(); 
+  Int_t nptbins     = GetHistogramRanges()->GetHistoPtBins();          Float_t ptmax     = GetHistogramRanges()->GetHistoPtMax();           Float_t ptmin     = GetHistogramRanges()->GetHistoPtMin();
+  Int_t nfineptbins = GetHistogramRanges()->GetHistoFinePtBins();          Float_t ptfinemax = GetHistogramRanges()->GetHistoFinePtMax();       Float_t ptfinemin = GetHistogramRanges()->GetHistoFinePtMin();
+  Int_t nphibins    = GetHistogramRanges()->GetHistoPhiBins();             Float_t phimax    = GetHistogramRanges()->GetHistoPhiMax();          Float_t phimin    = GetHistogramRanges()->GetHistoPhiMin();
+  Int_t netabins    = GetHistogramRanges()->GetHistoEtaBins();          Float_t etamax    = GetHistogramRanges()->GetHistoEtaMax();          Float_t etamin    = GetHistogramRanges()->GetHistoEtaMin();       
+  Int_t nmassbins   = GetHistogramRanges()->GetHistoMassBins();         Float_t massmax   = GetHistogramRanges()->GetHistoMassMax();          Float_t massmin   = GetHistogramRanges()->GetHistoMassMin();
+  Int_t nasymbins   = GetHistogramRanges()->GetHistoAsymmetryBins();    Float_t asymmax   = GetHistogramRanges()->GetHistoAsymmetryMax();    Float_t asymmin   = GetHistogramRanges()->GetHistoAsymmetryMin();
+  Int_t nPoverEbins = GetHistogramRanges()->GetHistoPOverEBins();       Float_t pOverEmax = GetHistogramRanges()->GetHistoPOverEMax();       Float_t pOverEmin = GetHistogramRanges()->GetHistoPOverEMin();
+  Int_t ndedxbins   = GetHistogramRanges()->GetHistodEdxBins();         Float_t dedxmax   = GetHistogramRanges()->GetHistodEdxMax();         Float_t dedxmin   = GetHistogramRanges()->GetHistodEdxMin();
+  Int_t ndRbins     = GetHistogramRanges()->GetHistodRBins();           Float_t dRmax     = GetHistogramRanges()->GetHistodRMax();           Float_t dRmin     = GetHistogramRanges()->GetHistodRMin();
+  Int_t ntimebins   = GetHistogramRanges()->GetHistoTimeBins();         Float_t timemax   = GetHistogramRanges()->GetHistoTimeMax();         Float_t timemin   = GetHistogramRanges()->GetHistoTimeMin();       
+  Int_t nclbins     = GetHistogramRanges()->GetHistoNClustersBins();    Int_t   nclmax    = GetHistogramRanges()->GetHistoNClustersMax();    Int_t   nclmin    = GetHistogramRanges()->GetHistoNClustersMin(); 
+  Int_t ncebins     = GetHistogramRanges()->GetHistoNCellsBins();       Int_t   ncemax    = GetHistogramRanges()->GetHistoNCellsMax();       Int_t   ncemin    = GetHistogramRanges()->GetHistoNCellsMin(); 
+  Int_t nceclbins   = GetHistogramRanges()->GetHistoNClusterCellBins(); Int_t   nceclmax  = GetHistogramRanges()->GetHistoNClusterCellMax(); Int_t   nceclmin  = GetHistogramRanges()->GetHistoNClusterCellMin(); 
+  Int_t nvdistbins  = GetHistogramRanges()->GetHistoVertexDistBins();   Float_t vdistmax  = GetHistogramRanges()->GetHistoVertexDistMax();   Float_t vdistmin  = GetHistogramRanges()->GetHistoVertexDistMin();
+  Int_t rbins       = GetHistogramRanges()->GetHistoRBins();            Float_t rmax      = GetHistogramRanges()->GetHistoRMax();            Float_t rmin      = GetHistogramRanges()->GetHistoRMin(); 
+  Int_t xbins       = GetHistogramRanges()->GetHistoXBins();            Float_t xmax      = GetHistogramRanges()->GetHistoXMax();            Float_t xmin      = GetHistogramRanges()->GetHistoXMin(); 
+  Int_t ybins       = GetHistogramRanges()->GetHistoYBins();            Float_t ymax      = GetHistogramRanges()->GetHistoYMax();            Float_t ymin      = GetHistogramRanges()->GetHistoYMin(); 
+  Int_t zbins       = GetHistogramRanges()->GetHistoZBins();            Float_t zmax      = GetHistogramRanges()->GetHistoZMax();            Float_t zmin      = GetHistogramRanges()->GetHistoZMin(); 
+  Int_t ssbins      = GetHistogramRanges()->GetHistoShowerShapeBins();  Float_t ssmax     = GetHistogramRanges()->GetHistoShowerShapeMax();  Float_t ssmin     = GetHistogramRanges()->GetHistoShowerShapeMin();
+  Int_t tdbins      = GetHistogramRanges()->GetHistoDiffTimeBins() ;    Float_t tdmax     = GetHistogramRanges()->GetHistoDiffTimeMax();     Float_t tdmin     = GetHistogramRanges()->GetHistoDiffTimeMin();
+  
+  Int_t nv0sbins    = GetHistogramRanges()->GetHistoV0SignalBins();          Int_t nv0smax = GetHistogramRanges()->GetHistoV0SignalMax();          Int_t nv0smin = GetHistogramRanges()->GetHistoV0SignalMin(); 
+  Int_t nv0mbins    = GetHistogramRanges()->GetHistoV0MultiplicityBins();    Int_t nv0mmax = GetHistogramRanges()->GetHistoV0MultiplicityMax();    Int_t nv0mmin = GetHistogramRanges()->GetHistoV0MultiplicityMin(); 
+  Int_t ntrmbins    = GetHistogramRanges()->GetHistoTrackMultiplicityBins(); Int_t ntrmmax = GetHistogramRanges()->GetHistoTrackMultiplicityMax(); Int_t ntrmmin = GetHistogramRanges()->GetHistoTrackMultiplicityMin(); 
   
   //EMCAL
   fNMaxCols = 48;
@@ -2654,7 +2653,7 @@ void AliAnaCalorimeterQA::Print(const Option_t * opt) const
     return;
   
   printf("**** Print %s %s ****\n", GetName(), GetTitle() ) ;
-  AliAnaPartCorrBaseClass::Print(" ");
+  AliAnaCaloTrackCorrBaseClass::Print(" ");
   
   printf("Select Calorimeter %s \n",fCalorimeter.Data());
   printf("Time Cut: %3.1f < TOF  < %3.1f\n", fTimeCutMin, fTimeCutMax);
index 05bbee1b7d8e68901e6a60a4083dab49c0065720..5adb2a5a8e71aa2b089cf9af59dcb2d5261dc2fa 100755 (executable)
@@ -2,7 +2,6 @@
 #define ALIANACALORIMETERQA_H
 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
  * See cxx source for full Copyright notice     */
-/* $Id: $ */
 
 //_________________________________________________________________________
 // Class to check results from simulations or reconstructed real data. 
@@ -22,9 +21,9 @@ class AliVCaloCells;
 class AliVCaloCluster;
 class AliVTrack;
 
-#include "AliAnaPartCorrBaseClass.h"
+#include "AliAnaCaloTrackCorrBaseClass.h"
  
-class AliAnaCalorimeterQA : public AliAnaPartCorrBaseClass {
+class AliAnaCalorimeterQA : public AliAnaCaloTrackCorrBaseClass {
   
 public: 
   AliAnaCalorimeterQA() ; // default ctor      
index 13a787dc74d52c786b48e8fea30ba9b1f779fd0a..0378cf831740e54708a7409a26e60b3d918e7d6d 100755 (executable)
@@ -12,7 +12,6 @@
  * about the suitability of this software for any purpose. It is          *
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
-/* $Id: $ */
 
 //_________________________________________________________________________
 //
@@ -41,7 +40,7 @@ ClassImp(AliAnaChargedParticles)
   
 //__________________________________________________
   AliAnaChargedParticles::AliAnaChargedParticles() : 
-    AliAnaPartCorrBaseClass(),
+    AliAnaCaloTrackCorrBaseClass(),
     fPdg(0), 
     fhNtracks(0),   fhPt(0),
     fhPhiNeg(0),    fhEtaNeg(0), 
@@ -71,9 +70,9 @@ TList *  AliAnaChargedParticles::GetCreateOutputObjects()
   TList * outputContainer = new TList() ; 
   outputContainer->SetName("ExampleHistos") ; 
   
-  Int_t nptbins  = GetHistoPtBins(); Int_t nphibins = GetHistoPhiBins(); Int_t netabins = GetHistoEtaBins();
-  Float_t ptmax  = GetHistoPtMax();  Float_t phimax = GetHistoPhiMax();  Float_t etamax = GetHistoEtaMax();
-  Float_t ptmin  = GetHistoPtMin();  Float_t phimin = GetHistoPhiMin();  Float_t etamin = GetHistoEtaMin();    
+  Int_t nptbins  = GetHistogramRanges()->GetHistoPtBins(); Int_t nphibins = GetHistogramRanges()->GetHistoPhiBins(); Int_t netabins = GetHistogramRanges()->GetHistoEtaBins();
+  Float_t ptmax  = GetHistogramRanges()->GetHistoPtMax();  Float_t phimax = GetHistogramRanges()->GetHistoPhiMax();  Float_t etamax = GetHistogramRanges()->GetHistoEtaMax();
+  Float_t ptmin  = GetHistogramRanges()->GetHistoPtMin();  Float_t phimin = GetHistogramRanges()->GetHistoPhiMin();  Float_t etamin = GetHistogramRanges()->GetHistoEtaMin();  
 
   fhNtracks  = new TH1F ("hNtracks","# of tracks", 1000,0,1000); 
   fhNtracks->SetXTitle("# of tracks");
@@ -208,7 +207,7 @@ void AliAnaChargedParticles::Print(const Option_t * opt) const
     return;
   
   printf("**** Print %s %s ****\n", GetName(), GetTitle() ) ;
-  AliAnaPartCorrBaseClass::Print(" "); 
+  AliAnaCaloTrackCorrBaseClass::Print(" ");    
        
   printf("Min Pt = %3.2f\n", GetMinPt());
   printf("Max Pt = %3.2f\n", GetMaxPt());
index d31ce7162b6f86c346535e4c1e1d932ed7b4f881..ba6198a2f67d69b00ff6810b036681de02eba511 100755 (executable)
@@ -2,11 +2,10 @@
 #define ALIANACHARGEDPARTICLES_H
 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
  * See cxx source for full Copyright notice     */
-/* $Id: $ */
 
 //_________________________________________________________________________
 // Example class on how to read AODCaloClusters, ESDCaloCells and AODTracks and how 
-// fill AODs with PWG4PartCorr analysis frame
+// fill AODs with PWG4CaloTrackCorr analysis frame
 // Select the type of detector information that you want to analyze, CTS (tracking), PHOS or EMCAL
 // Select the PID custer type of the calorimeters
 // Set min momentum of the cluster/tracks
@@ -17,9 +16,9 @@
 class TH2F; 
 
 // Analysis system
-#include "AliAnaPartCorrBaseClass.h"
+#include "AliAnaCaloTrackCorrBaseClass.h"
  
-class AliAnaChargedParticles : public AliAnaPartCorrBaseClass {
+class AliAnaChargedParticles : public AliAnaCaloTrackCorrBaseClass {
   
  public: 
   AliAnaChargedParticles() ; // default ctor
index b1d8e423bec2c6e9f26e837f6647cadb95f1f572..2ddf6fedc350f9e79d73b640517e893acc0d28f8 100755 (executable)
@@ -12,7 +12,6 @@
  * about the suitability of this software for any purpose. It is          *
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
-/* $Id: AliAnaElectron.cxx 28688 2008-09-11 15:04:07Z gconesab $ */
 
 //_________________________________________________________________________
 //
@@ -51,7 +50,7 @@ ClassImp(AliAnaElectron)
   
 //________________________________
 AliAnaElectron::AliAnaElectron() : 
-    AliAnaPartCorrBaseClass(),            fCalorimeter(""), 
+    AliAnaCaloTrackCorrBaseClass(),            fCalorimeter(""), 
     fMinDist(0.),                         fMinDist2(0.),                         fMinDist3(0.), 
     fTimeCutMin(-1),                      fTimeCutMax(999999),         
     fNCellsCut(0),                        fFillSSHistograms(kFALSE),             
@@ -395,14 +394,14 @@ TList *  AliAnaElectron::GetCreateOutputObjects()
   TList * outputContainer = new TList() ; 
   outputContainer->SetName("ElectronHistos") ; 
        
-  Int_t nptbins     = GetHistoPtBins();           Float_t ptmax     = GetHistoPtMax();           Float_t ptmin     = GetHistoPtMin(); 
-  Int_t nphibins    = GetHistoPhiBins();          Float_t phimax    = GetHistoPhiMax();          Float_t phimin    = GetHistoPhiMin(); 
-  Int_t netabins    = GetHistoEtaBins();          Float_t etamax    = GetHistoEtaMax();          Float_t etamin    = GetHistoEtaMin(); 
-  Int_t ssbins      = GetHistoShowerShapeBins();  Float_t ssmax     = GetHistoShowerShapeMax();  Float_t ssmin     = GetHistoShowerShapeMin();
-  Int_t nbins       = GetHistoNClusterCellBins(); Int_t   nmax      = GetHistoNClusterCellMax(); Int_t   nmin      = GetHistoNClusterCellMin(); 
-  Int_t ndedxbins   = GetHistodEdxBins();         Float_t dedxmax   = GetHistodEdxMax();         Float_t dedxmin   = GetHistodEdxMin();
-  Int_t nPoverEbins = GetHistoPOverEBins();       Float_t pOverEmax = GetHistoPOverEMax();       Float_t pOverEmin = GetHistoPOverEMin();
-  Int_t tbins       = GetHistoTimeBins() ;        Float_t tmax      = GetHistoTimeMax();         Float_t tmin      = GetHistoTimeMin();
+  Int_t nptbins     = GetHistogramRanges()->GetHistoPtBins();           Float_t ptmax     = GetHistogramRanges()->GetHistoPtMax();           Float_t ptmin     = GetHistogramRanges()->GetHistoPtMin(); 
+  Int_t nphibins    = GetHistogramRanges()->GetHistoPhiBins();          Float_t phimax    = GetHistogramRanges()->GetHistoPhiMax();          Float_t phimin    = GetHistogramRanges()->GetHistoPhiMin(); 
+  Int_t netabins    = GetHistogramRanges()->GetHistoEtaBins();          Float_t etamax    = GetHistogramRanges()->GetHistoEtaMax();          Float_t etamin    = GetHistogramRanges()->GetHistoEtaMin();       
+  Int_t ssbins      = GetHistogramRanges()->GetHistoShowerShapeBins();  Float_t ssmax     = GetHistogramRanges()->GetHistoShowerShapeMax();  Float_t ssmin     = GetHistogramRanges()->GetHistoShowerShapeMin();
+  Int_t nbins       = GetHistogramRanges()->GetHistoNClusterCellBins(); Int_t   nmax      = GetHistogramRanges()->GetHistoNClusterCellMax(); Int_t   nmin      = GetHistogramRanges()->GetHistoNClusterCellMin(); 
+  Int_t ndedxbins   = GetHistogramRanges()->GetHistodEdxBins();         Float_t dedxmax   = GetHistogramRanges()->GetHistodEdxMax();         Float_t dedxmin   = GetHistogramRanges()->GetHistodEdxMin();
+  Int_t nPoverEbins = GetHistogramRanges()->GetHistoPOverEBins();       Float_t pOverEmax = GetHistogramRanges()->GetHistoPOverEMax();       Float_t pOverEmin = GetHistogramRanges()->GetHistoPOverEMin();
+  Int_t tbins       = GetHistogramRanges()->GetHistoTimeBins() ;        Float_t tmax      = GetHistogramRanges()->GetHistoTimeMax();         Float_t tmin      = GetHistogramRanges()->GetHistoTimeMin();
 
   fhdEdxvsE  = new TH2F ("hdEdxvsE","matched track <dE/dx> vs cluster E ", nptbins,ptmin,ptmax,ndedxbins, dedxmin, dedxmax); 
   fhdEdxvsE->SetXTitle("E (GeV)");
@@ -1275,7 +1274,7 @@ void AliAnaElectron::Print(const Option_t * opt) const
     return;
   
   printf("**** Print %s %s ****\n", GetName(), GetTitle() ) ;
-  AliAnaPartCorrBaseClass::Print(" ");
+  AliAnaCaloTrackCorrBaseClass::Print(" ");
 
   printf("Calorimeter            =     %s\n", fCalorimeter.Data()) ;
   printf(" %2.2f < dEdx < %2.2f  \n",fdEdxMin,fdEdxMax) ;
index c039728b21884114df903a44737855366f4b0c34..69a3d3159f8e217c248307336ebcb43e54080d91 100755 (executable)
@@ -2,7 +2,6 @@
 #define ALIANAELECTRON_H
 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
  * See cxx source for full Copyright notice     */
-/* $Id: AliAnaElectron.h 27413 2008-07-18 13:28:12Z gconesab $ */
 
 //_________________________________________________________________________
 //
@@ -22,13 +21,13 @@ class TString ;
 class TObjString;
 
 // --- ANALYSIS system ---
-#include "AliAnaPartCorrBaseClass.h"
+#include "AliAnaCaloTrackCorrBaseClass.h"
 class AliStack;
 class TParticle;
 
 class TList ;
 
-class AliAnaElectron : public AliAnaPartCorrBaseClass {
+class AliAnaElectron : public AliAnaCaloTrackCorrBaseClass {
 
  public: 
   
index 8c296ffa720d7408b2c3b47800c764700f175baa..14fe3248ce41da474addaea7133917a74a4110d7 100755 (executable)
@@ -51,7 +51,7 @@ ClassImp(AliAnaInsideClusterInvariantMass)
   
 //__________________________________________________________________
 AliAnaInsideClusterInvariantMass::AliAnaInsideClusterInvariantMass() : 
-  AliAnaPartCorrBaseClass(),  
+  AliAnaCaloTrackCorrBaseClass(),  
   fCalorimeter(""),  
   fM02Cut(0),
   fMinNCells(0)
@@ -174,10 +174,10 @@ TList * AliAnaInsideClusterInvariantMass::GetCreateOutputObjects()
   TList * outputContainer = new TList() ; 
   outputContainer->SetName("InsideClusterHistos") ; 
   
-  Int_t nptbins  = GetHistoPtBins();           Float_t ptmax  = GetHistoPtMax();           Float_t ptmin  = GetHistoPtMin();
-  Int_t ssbins   = GetHistoShowerShapeBins();  Float_t ssmax  = GetHistoShowerShapeMax();  Float_t ssmin  = GetHistoShowerShapeMin();
-  Int_t mbins    = GetHistoMassBins();         Float_t mmax   = GetHistoMassMax();         Float_t mmin   = GetHistoMassMin();
-  Int_t ncbins   = GetHistoNClusterCellBins(); Int_t   ncmax  = GetHistoNClusterCellMax(); Int_t   ncmin  = GetHistoNClusterCellMin(); 
+  Int_t nptbins  = GetHistogramRanges()->GetHistoPtBins();           Float_t ptmax  = GetHistogramRanges()->GetHistoPtMax();           Float_t ptmin  = GetHistogramRanges()->GetHistoPtMin();
+  Int_t ssbins   = GetHistogramRanges()->GetHistoShowerShapeBins();  Float_t ssmax  = GetHistogramRanges()->GetHistoShowerShapeMax();  Float_t ssmin  = GetHistogramRanges()->GetHistoShowerShapeMin();
+  Int_t mbins    = GetHistogramRanges()->GetHistoMassBins();         Float_t mmax   = GetHistogramRanges()->GetHistoMassMax();         Float_t mmin   = GetHistogramRanges()->GetHistoMassMin();
+  Int_t ncbins   = GetHistogramRanges()->GetHistoNClusterCellBins(); Int_t   ncmax  = GetHistogramRanges()->GetHistoNClusterCellMax(); Int_t   ncmin  = GetHistogramRanges()->GetHistoNClusterCellMin(); 
 
   TString ptype[] ={"","#gamma","#gamma->e^{#pm}","#pi^{0}","#eta","e^{#pm}", "hadron"}; 
   TString pname[] ={"","Photon","Conversion",     "Pi0",    "Eta", "Electron","Hadron"};
@@ -636,7 +636,7 @@ void AliAnaInsideClusterInvariantMass::Print(const Option_t * opt) const
     return;
   
   printf("**** Print %s %s ****\n", GetName(), GetTitle() ) ;
-  AliAnaPartCorrBaseClass::Print("");
+  AliAnaCaloTrackCorrBaseClass::Print("");
   printf("Calorimeter     =     %s\n", fCalorimeter.Data()) ;
   printf("lambda 0 sqared >  %2.1f\n", fM02Cut);
   printf("    \n") ;
index 13fdbb4361e712d04aaec30f1961629959a04461..1b4f25d3dd08bb8214510b8527d0fb629a279bfc 100755 (executable)
@@ -2,7 +2,6 @@
 #define ALIANAINSIDECLUSTERINVARIANTMASS_H
 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
  * See cxx source for full Copyright notice     */
-/* $Id: AliAnaInsideClusterInvariantMass.h 27413 2008-07-18 13:28:12Z gconesab $ */
 
 //_________________________________________________________________________
 //
@@ -20,9 +19,9 @@ class TObjString;
 class TLorentzVector;
 
 // --- ANALYSIS system ---
-#include "AliAnaPartCorrBaseClass.h"
+#include "AliAnaCaloTrackCorrBaseClass.h"
 
-class AliAnaInsideClusterInvariantMass : public AliAnaPartCorrBaseClass {
+class AliAnaInsideClusterInvariantMass : public AliAnaCaloTrackCorrBaseClass {
 
  public: 
   AliAnaInsideClusterInvariantMass() ; // default ctor
index a222283cd21aff9df7ac63f2dacd75a9c997308d..82b8cf7d5d9e8da42310eeeca57ec341cfb26e75 100644 (file)
  * about the suitability of this software for any purpose. It is          *
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
-/* $Id: $ */
+
 //_________________________________________________________________________
 // class to extract omega(782)->pi0+gamma->3gamma
-//  Mar. 22, 2011: Additional method, espeically for EMCAL. A high E cluster is assumpted as pi0 (two photons are overlapped) without unfolding
+//  Mar. 22, 2011: Additional method, espeically for EMCAL. A high E cluster 
+//  is assumpted as pi0 (two photons are overlapped) without unfolding
 //
 //-- Author: Renzhuo Wan (IOPP-Wuhan, China)
 //_________________________________________________________________________
@@ -42,7 +43,7 @@ class TROOT;
 ClassImp(AliAnaOmegaToPi0Gamma)
 
 //______________________________________________________________________________
-AliAnaOmegaToPi0Gamma::AliAnaOmegaToPi0Gamma() : AliAnaPartCorrBaseClass(),
+AliAnaOmegaToPi0Gamma::AliAnaOmegaToPi0Gamma() : AliAnaCaloTrackCorrBaseClass(),
 fInputAODPi0(0), fInputAODGammaName(""),
 fEventsList(0x0),fNVtxZBin(0), fNCentBin(0), fNRpBin(0), fNBadChDistBin(0), fNpid(0),
 fVtxZCut(0), fCent(0), fRp(0), 
@@ -125,13 +126,13 @@ TList * AliAnaOmegaToPi0Gamma::GetCreateOutputObjects()
   fRp=new Double_t[fNRpBin];
   for(int i = 0;i<fNRpBin;i++)fRp[i]=0;
   //
-  Int_t nptbins   = GetHistoPtBins();
-  Float_t ptmax   = GetHistoPtMax();
-  Float_t ptmin   = GetHistoPtMin();
+  Int_t nptbins   = GetHistogramRanges()->GetHistoPtBins();
+  Float_t ptmax   = GetHistogramRanges()->GetHistoPtMax();
+  Float_t ptmin   = GetHistogramRanges()->GetHistoPtMin();
   
-  Int_t nmassbins = GetHistoMassBins();
-  Float_t massmin = GetHistoMassMin();
-  Float_t massmax = GetHistoMassMax();
+  Int_t nmassbins = GetHistogramRanges()->GetHistoMassBins();
+  Float_t massmin = GetHistogramRanges()->GetHistoMassMin();
+  Float_t massmax = GetHistogramRanges()->GetHistoMassMax();
   
   fhEtalon = new TH2F("hEtalon","Histo with binning parameters", nptbins,ptmin,ptmax,nmassbins,massmin,massmax) ;
   fhEtalon->SetXTitle("P_{T} (GeV)") ;
@@ -296,7 +297,7 @@ void AliAnaOmegaToPi0Gamma::Print(const Option_t * /*opt*/) const
 {
   //Print some relevant parameters set in the analysis
   printf("**** Print %s %s ****\n", GetName(), GetTitle() ) ;
-  AliAnaPartCorrBaseClass::Print(" ");
+  AliAnaCaloTrackCorrBaseClass::Print(" ");
   printf("Omega->pi0+gamma->3gamma\n");
   printf("Cuts at event level:            \n");
   printf("Bins of vertex Z:                     %d \n", fNVtxZBin);
index 024b7e4ae27797b0d0bfc4e83295167f06e86109..0de758a3abfe5c516f1ff2f7bfba4bf66a37b4a8 100644 (file)
@@ -1,23 +1,25 @@
+#ifndef ALIANAOMEGATOPI0GAMMA_H
+#define ALIANAOMEGATOPI0GAMMA_H
+
 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
  * See cxx source for full Copyright notice     */
-/* $Id: $ */
 
 //_________________________________________________________________________
 // class to extract omega(782)->pi0+gamma->3gamma
 //
 //-- Author: Renzhuo Wan (IOPP-Wuhan, China)
 //_________________________________________________________________________
-#ifndef ALIANAOMEGATOPI0GAMMA_H
-#define ALIANAOMEGATOPI0GAMMA_H
+
 //Root
 class TList;
 class TH2F ;
 class TLorentzVector;
+
 //Analysis
-#include "AliAnaPartCorrBaseClass.h"
+#include "AliAnaCaloTrackCorrBaseClass.h"
 class TParticle;
 
-class AliAnaOmegaToPi0Gamma : public AliAnaPartCorrBaseClass {
+class AliAnaOmegaToPi0Gamma : public AliAnaCaloTrackCorrBaseClass {
   
   public: 
   
index f5ba8233ac6ae8fef2ca32b0bbde4befa2cda5b3..15b0962194423ed940f178ed7400b3fabb4bc858 100755 (executable)
@@ -12,7 +12,6 @@
  * about the suitability of this software for any purpose. It is          *
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
-/* $Id: $ */
 
 //_________________________________________________________________________
 // Class for the analysis of particle - hadron correlations
@@ -58,7 +57,7 @@ ClassImp(AliAnaParticleHadronCorrelation)
 
 //___________________________________________________________________
   AliAnaParticleHadronCorrelation::AliAnaParticleHadronCorrelation(): 
-    AliAnaPartCorrBaseClass(),
+    AliAnaCaloTrackCorrBaseClass(),
     fMinTriggerPt(0.),   
     fMaxAssocPt(1000.),             fMinAssocPt(0.),   
     fDeltaPhiMaxCut(0.),            fDeltaPhiMinCut(0.),   
@@ -172,9 +171,9 @@ TList *  AliAnaParticleHadronCorrelation::GetCreateOutputObjects()
   TList * outputContainer = new TList() ; 
   outputContainer->SetName("CorrelationHistos") ; 
   
-  Int_t   nptbins = GetHistoPtBins(); Int_t  nphibins = GetHistoPhiBins(); Int_t   netabins = GetHistoEtaBins();
-  Float_t ptmax   = GetHistoPtMax();  Float_t phimax  = GetHistoPhiMax();  Float_t etamax   = GetHistoEtaMax();
-  Float_t ptmin   = GetHistoPtMin();  Float_t phimin  = GetHistoPhiMin();  Float_t etamin   = GetHistoEtaMin();        
+  Int_t   nptbins = GetHistogramRanges()->GetHistoPtBins(); Int_t  nphibins = GetHistogramRanges()->GetHistoPhiBins(); Int_t   netabins = GetHistogramRanges()->GetHistoEtaBins();
+  Float_t ptmax   = GetHistogramRanges()->GetHistoPtMax();  Float_t phimax  = GetHistogramRanges()->GetHistoPhiMax();  Float_t etamax   = GetHistogramRanges()->GetHistoEtaMax();
+  Float_t ptmin   = GetHistogramRanges()->GetHistoPtMin();  Float_t phimin  = GetHistogramRanges()->GetHistoPhiMin();  Float_t etamin   = GetHistogramRanges()->GetHistoEtaMin();      
   
   fhPtLeading  = new TH1F ("hPtLeading","p_T distribution of leading particles", nptbins,ptmin,ptmax); 
   fhPtLeading->SetXTitle("p_{T}^{trig} (GeV/c)");
@@ -1100,7 +1099,7 @@ Bool_t  AliAnaParticleHadronCorrelation::MakeChargedCorrelation(AliAODPWG4Partic
       fhPhiCharged     ->Fill(pt,phi);
       fhDeltaEtaCharged->Fill(ptTrig,aodParticle->Eta()-eta);
       fhDeltaPhiCharged->Fill(ptTrig, deltaPhi);
-      fhDeltaPhiDeltaEtaCharged->Fill(deltaPhi,aodParticle->Eta()-eta);
+      if(pt >2 ) fhDeltaPhiDeltaEtaCharged->Fill(deltaPhi,aodParticle->Eta()-eta);
       
       if(GetDebug() > 2 ) printf("AliAnaParticleHadronCorrelation::MakeChargedCorrelation() - Selected charge for momentum imbalance: pt %2.2f, phi %2.2f, eta %2.2f \n",pt,phi,eta);
       //fill different multiplicity histogram
@@ -1678,7 +1677,7 @@ void AliAnaParticleHadronCorrelation::Print(const Option_t * opt) const
     return;
   
   printf("**** Print %s %s ****\n", GetName(), GetTitle() ) ;
-  AliAnaPartCorrBaseClass::Print(" ");
+  AliAnaCaloTrackCorrBaseClass::Print(" ");
   printf("Pt trigger           >  %3.2f\n", fMinTriggerPt) ;
   printf("Pt associated hadron <  %3.2f\n", fMaxAssocPt) ; 
   printf("Pt associated hadron >  %3.2f\n", fMinAssocPt) ;
index a9effbc49aa35d22f9b9354a1b5006809f1c5ef2..c8abf8faf2317e0fe3528e75a6c568cda7916c1a 100755 (executable)
@@ -2,7 +2,6 @@
 #define ALIANAPARTICLEHADRONCORRELATION_H
 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
  * See cxx source for full Copyright notice     */
-/* $Id:  $ */
 
 //_________________________________________________________________________
 // Class that contains the algorithm for the analysis of particle - hadron correlations
 //class TH3D;
 
 // --- Analysis system ---
-#include "AliAnaPartCorrBaseClass.h"
+#include "AliAnaCaloTrackCorrBaseClass.h"
 class AliAODPWG4ParticleCorrelation ;
 
-class AliAnaParticleHadronCorrelation : public AliAnaPartCorrBaseClass {
+class AliAnaParticleHadronCorrelation : public AliAnaCaloTrackCorrBaseClass {
   
  public: 
   
index e3ed67acc4127a1206bd46042ad84436ed4c2c35..834df0423a4d9335ec258e56171d205027dd23f8 100755 (executable)
@@ -12,7 +12,6 @@
  * about the suitability of this software for any purpose. It is          *
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
-/* $Id: AliAnaParticleIsolation.cxx 28688 2008-09-11 15:04:07Z gconesab $ */
 
 //_________________________________________________________________________
 // Class for analysis of particle isolation
@@ -48,7 +47,7 @@ ClassImp(AliAnaParticleIsolation)
   
 //______________________________________________________________________________
   AliAnaParticleIsolation::AliAnaParticleIsolation() : 
-    AliAnaPartCorrBaseClass(),        fCalorimeter(""), 
+    AliAnaCaloTrackCorrBaseClass(),        fCalorimeter(""), 
     fReMakeIC(0),                     fMakeSeveralIC(0),
     // Several IC
     fNCones(0),                       fNPtThresFrac(0), 
@@ -183,15 +182,15 @@ TList *  AliAnaParticleIsolation::GetCreateOutputObjects()
   TList * outputContainer = new TList() ; 
   outputContainer->SetName("IsolatedParticleHistos") ; 
   
-  Int_t   nptbins  = GetHistoPtBins();
-  Int_t   nphibins = GetHistoPhiBins();
-  Int_t   netabins = GetHistoEtaBins();
-  Float_t ptmax    = GetHistoPtMax();
-  Float_t phimax   = GetHistoPhiMax();
-  Float_t etamax   = GetHistoEtaMax();
-  Float_t ptmin    = GetHistoPtMin();
-  Float_t phimin   = GetHistoPhiMin();
-  Float_t etamin   = GetHistoEtaMin(); 
+  Int_t   nptbins  = GetHistogramRanges()->GetHistoPtBins();
+  Int_t   nphibins = GetHistogramRanges()->GetHistoPhiBins();
+  Int_t   netabins = GetHistogramRanges()->GetHistoEtaBins();
+  Float_t ptmax    = GetHistogramRanges()->GetHistoPtMax();
+  Float_t phimax   = GetHistogramRanges()->GetHistoPhiMax();
+  Float_t etamax   = GetHistogramRanges()->GetHistoEtaMax();
+  Float_t ptmin    = GetHistogramRanges()->GetHistoPtMin();
+  Float_t phimin   = GetHistogramRanges()->GetHistoPhiMin();
+  Float_t etamin   = GetHistogramRanges()->GetHistoEtaMin();   
   
   Int_t   nptsumbins    = fHistoNPtSumBins;
   Float_t ptsummax      = fHistoPtSumMax;
@@ -1057,7 +1056,7 @@ void AliAnaParticleIsolation::Print(const Option_t * opt) const
     return;
   
   printf("**** Print %s %s ****\n", GetName(), GetTitle() ) ;
-  AliAnaPartCorrBaseClass::Print(" ");
+  AliAnaCaloTrackCorrBaseClass::Print(" ");
   
   printf("ReMake Isolation          = %d \n",  fReMakeIC) ;
   printf("Make Several Isolation    = %d \n",  fMakeSeveralIC) ;
index 0a9726227020063677bcedf79957230e9152b764..baa1e96222bdc8c19e94e55beb73b4ace53de612 100755 (executable)
@@ -2,7 +2,6 @@
 #define ALIANAPARTICLEISOLATION_H
 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
  * See cxx source for full Copyright notice     */
-/* $Id: AliAnaParticleIsolation.h 27413 2008-07-18 13:28:12Z gconesab $ */
 
 //_________________________________________________________________________
 
@@ -20,12 +19,12 @@ class TList ;
 class TObjString;
 
 // --- ANALYSIS system ---
-#include "AliAnaPartCorrBaseClass.h"
+#include "AliAnaCaloTrackCorrBaseClass.h"
 class AliAODPWG4Particle;
 class AliAODPWG4ParticleCorrelation ;
 
 
-class AliAnaParticleIsolation : public AliAnaPartCorrBaseClass {
+class AliAnaParticleIsolation : public AliAnaCaloTrackCorrBaseClass {
 
  public:   
   AliAnaParticleIsolation() ; // default ctor
index 2db18a75396f91977d808a7f469a8a9028481178..cdcceeadf53b79ba7fae231af696debfb9439582 100755 (executable)
@@ -12,7 +12,6 @@
  * about the suitability of this software for any purpose. It is          *
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
-/* $Id: AliAnaParticleJetFinderCorrelation.cxx 22232 2007-11-17 16:39:49Z gustavo $ */
 
 //_________________________________________________________________________
 // Class for the analysis of particle (direct gamma) -jet (jet found with finder) correlations
@@ -38,9 +37,9 @@
 ClassImp(AliAnaParticleJetFinderCorrelation)
   
 
-//____________________________________________________________________________
+//________________________________________________________________________
   AliAnaParticleJetFinderCorrelation::AliAnaParticleJetFinderCorrelation() : 
-    AliAnaPartCorrBaseClass(),  
+    AliAnaCaloTrackCorrBaseClass(),  
     fDeltaPhiMaxCut(0.), fDeltaPhiMinCut(0.), fRatioMaxCut(0.),  fRatioMinCut(0.), 
     fConeSize(0), fPtThresholdInCone(0),fUseJetRefTracks(0), fMakeCorrelationInHistoMaker(0), fSelectIsolated(0),
     fhDeltaEta(0), fhDeltaPhi(0), fhDeltaPt(0), fhPtRatio(0), fhPt(0),
@@ -51,67 +50,8 @@ ClassImp(AliAnaParticleJetFinderCorrelation)
   //Initialize parameters
   InitParameters();
 }
-/*
-//____________________________________________________________________________
-AliAnaParticleJetFinderCorrelation::AliAnaParticleJetFinderCorrelation(const AliAnaParticleJetFinderCorrelation & pjf) :   
-  AliAnaPartCorrBaseClass(pjf),  
-  fDeltaPhiMaxCut(pjf.fDeltaPhiMaxCut), fDeltaPhiMinCut(pjf.fDeltaPhiMinCut), 
-  fRatioMaxCut(pjf.fRatioMaxCut), fRatioMinCut(pjf.fRatioMinCut), 
-  fConeSize(pjf.fConeSize), fPtThresholdInCone(pjf.fPtThresholdInCone),   
-  fUseJetRefTracks(pjf.fUseJetRefTracks), fMakeCorrelationInHistoMaker(pjf.fMakeCorrelationInHistoMaker),
-  fSelectIsolated(pjf.fSelectIsolated),        
-  fhDeltaEta(pjf.fhDeltaEta), fhDeltaPhi(pjf.fhDeltaPhi), 
-  fhDeltaPt(pjf.fhDeltaPt), fhPtRatio(pjf.fhPtRatio), fhPt(pjf.fhPt), 
-  fhFFz(pjf.fhFFz),fhFFxi(pjf.fhFFxi),fhFFpt(pjf.fhFFpt),
-  fhNTracksInCone(pjf.fhNTracksInCone)
-{
-  // cpy ctor
-  
-}
-
-//_________________________________________________________________________
-AliAnaParticleJetFinderCorrelation & AliAnaParticleJetFinderCorrelation::operator = (const AliAnaParticleJetFinderCorrelation & pjf)
-{
-  // assignment operator
-  
-  if(this == &pjf)return *this;
-  ((AliAnaPartCorrBaseClass *)this)->operator=(pjf);
-  
-  fDeltaPhiMaxCut    = pjf.fDeltaPhiMaxCut ; 
-  fDeltaPhiMinCut    = pjf.fDeltaPhiMinCut ; 
-  fRatioMaxCut       = pjf.fRatioMaxCut ;
-  fRatioMinCut       = pjf.fRatioMinCut ; 
-  fConeSize          = pjf.fConeSize ; 
-  fPtThresholdInCone = pjf.fPtThresholdInCone ;
-  fUseJetRefTracks   = pjf.fUseJetRefTracks ;
-  fMakeCorrelationInHistoMaker = pjf.fMakeCorrelationInHistoMaker ;  
-  fSelectIsolated    = pjf.fSelectIsolated ;
-  
-  //Histograms
-  fhDeltaEta = pjf.fhDeltaEta;
-  fhDeltaPhi = pjf.fhDeltaPhi;
-  fhDeltaPt  = pjf.fhDeltaPt;
-  fhPtRatio  = pjf.fhPtRatio;
-  fhPt       = pjf.fhPt;
-  
-  fhFFz   = pjf.fhFFz;
-  fhFFxi  = pjf.fhFFxi;
-  fhFFpt  = pjf.fhFFpt;
-  fhNTracksInCone = pjf.fhNTracksInCone;  
-  
-  return *this;
-  
-}
-*/
-//____________________________________________________________________________
-//AliAnaParticleJetFinderCorrelation::~AliAnaParticleJetFinderCorrelation() 
-//{
-//   // Remove all pointers except analysis output pointers.
-// 
-//}
 
-
-//________________________________________________________________________
+//___________________________________________________________________
 TList *  AliAnaParticleJetFinderCorrelation::GetCreateOutputObjects()
 {  
   // Create histograms to be saved in output file and 
@@ -120,15 +60,15 @@ TList *  AliAnaParticleJetFinderCorrelation::GetCreateOutputObjects()
   TList * outputContainer = new TList() ; 
   outputContainer->SetName("ParticleJetFinderHistos") ; 
   
-  Int_t nptbins  = GetHistoPtBins();
-  //   Int_t nphibins = GetHistoPhiBins();
-  //   Int_t netabins = GetHistoEtaBins();
-  Float_t ptmax  = GetHistoPtMax();
-  //   Float_t phimax = GetHistoPhiMax();
-  //   Float_t etamax = GetHistoEtaMax();
-  Float_t ptmin  = GetHistoPtMin();
-  //   Float_t phimin = GetHistoPhiMin();
-//     Float_t etamin = GetHistoEtaMin();      
+  Int_t nptbins  = GetHistogramRanges()->GetHistoPtBins();
+  //   Int_t nphibins = GetHistogramRanges()->GetHistoPhiBins();
+  //   Int_t netabins = GetHistogramRanges()->GetHistoEtaBins();
+  Float_t ptmax  = GetHistogramRanges()->GetHistoPtMax();
+  //   Float_t phimax = GetHistogramRanges()->GetHistoPhiMax();
+  //   Float_t etamax = GetHistogramRanges()->GetHistoEtaMax();
+  Float_t ptmin  = GetHistogramRanges()->GetHistoPtMin();
+  //   Float_t phimin = GetHistogramRanges()->GetHistoPhiMin();
+//     Float_t etamin = GetHistogramRanges()->GetHistoEtaMin();        
   
   fhDeltaPhi  = new TH2F("DeltaPhi","#phi_{jet} - #phi_{trigger} vs p_{T trigger}",nptbins,ptmin,ptmax,100,-4,4); 
   fhDeltaPhi->SetYTitle("#Delta #phi");
@@ -399,7 +339,7 @@ void AliAnaParticleJetFinderCorrelation::Print(const Option_t * opt) const
     return;
   
   printf("**** Print %s %s ****\n", GetName(), GetTitle() ) ;
-  AliAnaPartCorrBaseClass::Print(" ");
+  AliAnaCaloTrackCorrBaseClass::Print(" ");
 
   printf("Phi trigger-jet        <     %3.2f\n", fDeltaPhiMaxCut) ; 
   printf("Phi trigger-jet        >     %3.2f\n", fDeltaPhiMinCut) ;
index a791d6af307bf87133ac5da42e934b1d42d6f0bd..e1d2d2d4d4c47d7e8889d2c2d1a77ca0b60881da 100755 (executable)
@@ -2,8 +2,6 @@
 #define ALIANAPARTICLEJETFINDERCORRELATION_H
 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
  * See cxx source for full Copyright notice     */
-/* $Id: AliAnaParticleJetFinderCorrelation.h 21839 2007-10-29 13:49:42Z gustavo $ */
-
 
 //_________________________________________________________________________
 // Class that contains the algorithm for the analysis of particle (direct gamma) - jet 
 class TH2F;
 
 //---- Analysis system ----
-#include "AliAnaPartCorrBaseClass.h"
+#include "AliAnaCaloTrackCorrBaseClass.h"
 
-class AliAnaParticleJetFinderCorrelation : public AliAnaPartCorrBaseClass {
+class AliAnaParticleJetFinderCorrelation : public AliAnaCaloTrackCorrBaseClass {
        
  public:   
-  AliAnaParticleJetFinderCorrelation() ;            // default ctor
-  virtual ~AliAnaParticleJetFinderCorrelation() {;} // virtual dtor
+  AliAnaParticleJetFinderCorrelation() ;              // default ctor
+  virtual ~AliAnaParticleJetFinderCorrelation() { ; } // virtual dtor
 
   // General methods
   
@@ -88,7 +86,7 @@ private:
   TH2F *     fhFFpt;              //! Jet particle pt distribution in cone
   TH2F *     fhNTracksInCone;     //! jet multiplicity in cone
   
-  AliAnaParticleJetFinderCorrelation(const AliAnaParticleJetFinderCorrelation & g) ;               // cpy ctor
+  AliAnaParticleJetFinderCorrelation(              const AliAnaParticleJetFinderCorrelation & g) ; // cpy ctor
   AliAnaParticleJetFinderCorrelation & operator = (const AliAnaParticleJetFinderCorrelation & g) ; // cpy assignment
   
   ClassDef(AliAnaParticleJetFinderCorrelation,2)
index c67b2f3b2bc25281c7770801eb40bc27d83cb7dd..aa43e5880132ae3d500ddc74bc22dfb9c3d275e6 100755 (executable)
@@ -12,7 +12,6 @@
  * about the suitability of this software for any purpose. It is          *
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
-/* $Id: $ */
 
 //_________________________________________________________________________
 // Class that contains the algorithm for the reconstruction of jet, cone around leading particle
@@ -49,7 +48,7 @@ ClassImp(AliAnaParticleJetLeadingConeCorrelation)
 
 //____________________________________________________________________________
   AliAnaParticleJetLeadingConeCorrelation::AliAnaParticleJetLeadingConeCorrelation() : 
-    AliAnaPartCorrBaseClass(), fJetsOnlyInCTS(kFALSE), fPbPb(kFALSE),     
+    AliAnaCaloTrackCorrBaseClass(), fJetsOnlyInCTS(kFALSE), fPbPb(kFALSE),     
     fSeveralConeAndPtCuts(0),  fReMakeJet(0),
     fDeltaPhiMaxCut(0.), fDeltaPhiMinCut(0.), 
     fLeadingRatioMaxCut(0.),  fLeadingRatioMinCut(0.), 
@@ -142,7 +141,7 @@ ClassImp(AliAnaParticleJetLeadingConeCorrelation)
 /*
 //____________________________________________________________________________
 AliAnaParticleJetLeadingConeCorrelation::AliAnaParticleJetLeadingConeCorrelation(const AliAnaParticleJetLeadingConeCorrelation & jetlc) :   
-  AliAnaPartCorrBaseClass(jetlc), fJetsOnlyInCTS(jetlc.fJetsOnlyInCTS), fPbPb(jetlc.fPbPb), 
+  AliAnaCaloTrackCorrBaseClass(jetlc), fJetsOnlyInCTS(jetlc.fJetsOnlyInCTS), fPbPb(jetlc.fPbPb), 
   fSeveralConeAndPtCuts(jetlc.fSeveralConeAndPtCuts),  fReMakeJet(jetlc. fReMakeJet),
   fDeltaPhiMaxCut(jetlc. fDeltaPhiMaxCut), fDeltaPhiMinCut(jetlc.fDeltaPhiMinCut), 
   fLeadingRatioMaxCut(jetlc.fLeadingRatioMaxCut),  fLeadingRatioMinCut(jetlc.fLeadingRatioMinCut), 
@@ -242,7 +241,7 @@ AliAnaParticleJetLeadingConeCorrelation & AliAnaParticleJetLeadingConeCorrelatio
   // assignment operator
   
   if(this == &jetlc)return *this;
-  ((AliAnaPartCorrBaseClass *)this)->operator=(jetlc);
+  ((AliAnaCaloTrackCorrBaseClass *)this)->operator=(jetlc);
   
   fSeveralConeAndPtCuts  = jetlc.fSeveralConeAndPtCuts ; 
   fPbPb                  = jetlc.fPbPb ;
@@ -471,15 +470,15 @@ TList *  AliAnaParticleJetLeadingConeCorrelation::GetCreateOutputObjects()
   fOutCont = new TList() ; 
   fOutCont->SetName("ParticleJetLeadingInConeCorrelationHistograms") ; 
   
-  Int_t nptbins  = GetHistoPtBins();
-  Int_t nphibins = GetHistoPhiBins();
-  Int_t netabins = GetHistoEtaBins();
-  Float_t ptmax  = GetHistoPtMax();
-  Float_t phimax = GetHistoPhiMax();
-  Float_t etamax = GetHistoEtaMax();
-  Float_t ptmin  = GetHistoPtMin();
-  Float_t phimin = GetHistoPhiMin();
-  Float_t etamin = GetHistoEtaMin();   
+  Int_t nptbins  = GetHistogramRanges()->GetHistoPtBins();
+  Int_t nphibins = GetHistogramRanges()->GetHistoPhiBins();
+  Int_t netabins = GetHistogramRanges()->GetHistoEtaBins();
+  Float_t ptmax  = GetHistogramRanges()->GetHistoPtMax();
+  Float_t phimax = GetHistogramRanges()->GetHistoPhiMax();
+  Float_t etamax = GetHistogramRanges()->GetHistoEtaMax();
+  Float_t ptmin  = GetHistogramRanges()->GetHistoPtMin();
+  Float_t phimin = GetHistogramRanges()->GetHistoPhiMin();
+  Float_t etamin = GetHistogramRanges()->GetHistoEtaMin();     
   
   fhChargedLeadingPt  = new TH2F("ChargedLeadingPt","p_{T leading charge} vs p_{T trigger}",nptbins,ptmin,ptmax,nptbins,ptmin,ptmax); 
   fhChargedLeadingPt->SetYTitle("p_{T leading charge}");
@@ -1652,7 +1651,7 @@ void AliAnaParticleJetLeadingConeCorrelation::Print(const Option_t * opt) const
     return;
   
   printf("**** Print  %s %s ****\n", GetName(), GetTitle() ) ;
-  AliAnaPartCorrBaseClass::Print(" ");
+  AliAnaCaloTrackCorrBaseClass::Print(" ");
   
   if(fJetsOnlyInCTS)printf("Jets reconstructed in CTS \n");
   else printf("Jets reconstructed in CTS+EMCAL \n");
index 9c41110e2a3827549cab45e5c214530a89c055f8..7959ae77b649a12099e7cf3ba6c4a0c0ca2dd9fe 100755 (executable)
@@ -2,7 +2,6 @@
 #define ALIANAPARTICLEJETLEADINGCONECORRELATION_H
 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
  * See cxx source for full Copyright notice     */
-/* $Id: $ */
 
 //_________________________________________________________________________
 // Class that contains the algorithm for the reconstruction of jet, cone around leading particle
@@ -25,9 +24,9 @@ class AliVCluster;
 class AliCaloTrackReader;
 class AliNeutralMesonSelection;
 
-#include "AliAnaPartCorrBaseClass.h"
+#include "AliAnaCaloTrackCorrBaseClass.h"
 
-class AliAnaParticleJetLeadingConeCorrelation : public AliAnaPartCorrBaseClass {
+class AliAnaParticleJetLeadingConeCorrelation : public AliAnaCaloTrackCorrBaseClass {
 
 public: 
   AliAnaParticleJetLeadingConeCorrelation() ; // default ctor
index c98cb2e3fed23c689e1c700f8e0197d6b923b014..aaef0031d6f2221a3c42a31f15248083731dfd05 100755 (executable)
@@ -12,7 +12,6 @@
  * about the suitability of this software for any purpose. It is          *
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
-/* $Id:  $ */
 
 //_________________________________________________________________________
 // Class for the analysis of particle-parton correlations
 #include "AliStack.h"  
 #include "AliAODPWG4ParticleCorrelation.h"
 
-  ClassImp(AliAnaParticlePartonCorrelation)
-  
+ClassImp(AliAnaParticlePartonCorrelation)
+
 
-//____________________________________________________________________________
-  AliAnaParticlePartonCorrelation::AliAnaParticlePartonCorrelation() : 
-    AliAnaPartCorrBaseClass(),   
-    fhDeltaEtaNearParton(0), fhDeltaPhiNearParton(0), 
-    fhDeltaPtNearParton(0), fhPtRatNearParton(0),
-    fhDeltaEtaAwayParton(0), fhDeltaPhiAwayParton(0), 
-    fhDeltaPtAwayParton(0), fhPtRatAwayParton(0)
+//________________________________________________________________
+AliAnaParticlePartonCorrelation::AliAnaParticlePartonCorrelation() : 
+AliAnaCaloTrackCorrBaseClass(),   
+fhDeltaEtaNearParton(0), fhDeltaPhiNearParton(0), 
+fhDeltaPtNearParton(0),  fhPtRatNearParton(0),
+fhDeltaEtaAwayParton(0), fhDeltaPhiAwayParton(0), 
+fhDeltaPtAwayParton(0),  fhPtRatAwayParton(0)
 {
   //Default Ctor
-
+  
   //Initialize parameters
   InitParameters();
 }
-/*
-//____________________________________________________________________________
-AliAnaParticlePartonCorrelation::AliAnaParticlePartonCorrelation(const AliAnaParticlePartonCorrelation & g) :   
-  AliAnaPartCorrBaseClass(g),   
-  fhDeltaEtaNearParton(g.fhDeltaEtaNearParton), fhDeltaPhiNearParton(g.fhDeltaPhiNearParton), 
-  fhDeltaPtNearParton(g.fhDeltaPtNearParton), fhPtRatNearParton(g.fhPtRatNearParton),
-  fhDeltaEtaAwayParton(g.fhDeltaEtaAwayParton), fhDeltaPhiAwayParton(g.fhDeltaPhiAwayParton), 
-  fhDeltaPtAwayParton(g.fhDeltaPtAwayParton), fhPtRatAwayParton(g.fhPtRatAwayParton)
-{
-  // cpy ctor
-
-}
-
-//_________________________________________________________________________
-AliAnaParticlePartonCorrelation & AliAnaParticlePartonCorrelation::operator = (const AliAnaParticlePartonCorrelation & source)
-{
-  // assignment operator
-
-  if(this == &source)return *this;
-  ((AliAnaPartCorrBaseClass *)this)->operator=(source);
 
-  fhDeltaEtaAwayParton = source.fhDeltaEtaAwayParton;
-  fhDeltaPhiAwayParton = source.fhDeltaPhiAwayParton;
-  fhDeltaPtAwayParton = source.fhDeltaPtAwayParton;
-  fhPtRatAwayParton = source.fhPtRatAwayParton;
-  fhDeltaEtaNearParton = source.fhDeltaEtaNearParton;
-  fhDeltaPhiNearParton = source.fhDeltaPhiNearParton;
-  fhDeltaPtNearParton = source.fhDeltaPtNearParton;
-  fhPtRatNearParton = source.fhPtRatNearParton;
-
-  return *this;
-
-}
-*/
-
-//________________________________________________________________________
+//________________________________________________________________
 TList *  AliAnaParticlePartonCorrelation::GetCreateOutputObjects()
 {  
   // Create histograms to be saved in output file 
-
+  
   TList * outputContainer = new TList() ; 
   outputContainer->SetName("ParticlePartonHistos") ; 
   
   fhDeltaPhiNearParton  = new TH2F
-    ("DeltaPhiNearParton","#phi_{particle} - #phi_{parton} vs p_{T particle}",
-     200,0,120,200,0,6.4); 
+  ("DeltaPhiNearParton","#phi_{particle} - #phi_{parton} vs p_{T particle}",
+   200,0,120,200,0,6.4); 
   fhDeltaPhiNearParton->SetYTitle("#Delta #phi");
   fhDeltaPhiNearParton->SetXTitle("p_{T particle} (GeV/c)");
   outputContainer->Add(fhDeltaPhiNearParton);
   
   fhDeltaEtaNearParton  = new TH2F
-    ("DeltaEtaNearParton","#eta_{particle} - #eta_{parton} vs p_{T particle}",
-     200,0,120,200,-2,2); 
+  ("DeltaEtaNearParton","#eta_{particle} - #eta_{parton} vs p_{T particle}",
+   200,0,120,200,-2,2); 
   fhDeltaEtaNearParton->SetYTitle("#Delta #eta");
   fhDeltaEtaNearParton->SetXTitle("p_{T particle} (GeV/c)");
   outputContainer->Add(fhDeltaEtaNearParton);
   
   fhDeltaPtNearParton  = new TH2F
-    ("DeltaPtNearParton","#p_{T particle} - #p_{T parton} vs p_{T particle}",
-     200,0,120,100,-10,10); 
+  ("DeltaPtNearParton","#p_{T particle} - #p_{T parton} vs p_{T particle}",
+   200,0,120,100,-10,10); 
   fhDeltaPtNearParton->SetYTitle("#Delta #p_{T}");
   fhDeltaPtNearParton->SetXTitle("p_{T particle} (GeV/c)"); 
   outputContainer->Add(fhDeltaPtNearParton);
   
   fhPtRatNearParton  = new TH2F
-    ("PtRatNearParton","#p_{T parton} / #p_{T particle} vs p_{T particle}",
-     200,0,120,200,0,5); 
+  ("PtRatNearParton","#p_{T parton} / #p_{T particle} vs p_{T particle}",
+   200,0,120,200,0,5); 
   fhPtRatNearParton->SetYTitle("ratio");
   fhPtRatNearParton->SetXTitle("p_{T particle} (GeV/c)");
   outputContainer->Add(fhPtRatNearParton);
   
   fhDeltaPhiAwayParton  = new TH2F
-    ("DeltaPhiAwayParton","#phi_{particle} - #phi_{parton} vs p_{T particle}",
-     200,0,120,200,0,6.4); 
+  ("DeltaPhiAwayParton","#phi_{particle} - #phi_{parton} vs p_{T particle}",
+   200,0,120,200,0,6.4); 
   fhDeltaPhiAwayParton->SetYTitle("#Delta #phi");
   fhDeltaPhiAwayParton->SetXTitle("p_{T particle} (GeV/c)");
   outputContainer->Add(fhDeltaPhiAwayParton);
   
   fhDeltaEtaAwayParton  = new TH2F
-    ("DeltaEtaAwayParton","#eta_{particle} - #eta_{parton} vs p_{T particle}",
-     200,0,120,200,-2,2); 
+  ("DeltaEtaAwayParton","#eta_{particle} - #eta_{parton} vs p_{T particle}",
+   200,0,120,200,-2,2); 
   fhDeltaEtaAwayParton->SetYTitle("#Delta #eta");
   fhDeltaEtaAwayParton->SetXTitle("p_{T particle} (GeV/c)");
   outputContainer->Add(fhDeltaEtaAwayParton);
   
   fhDeltaPtAwayParton  = new TH2F
-    ("DeltaPtAwayParton","#p_{T particle} - #p_{T parton} vs p_{T particle}",
-     200,0,120,100,-10,10); 
+  ("DeltaPtAwayParton","#p_{T particle} - #p_{T parton} vs p_{T particle}",
+   200,0,120,100,-10,10); 
   fhDeltaPtAwayParton->SetYTitle("#Delta #p_{T}");
   fhDeltaPtAwayParton->SetXTitle("p_{T particle} (GeV/c)"); 
   outputContainer->Add(fhDeltaPtAwayParton);
   
   fhPtRatAwayParton  = new TH2F
-    ("PtRatAwayParton","#p_{T parton} / #p_{T particle} vs p_{T particle}",
-     200,0,120,200,0,5); 
+  ("PtRatAwayParton","#p_{T parton} / #p_{T particle} vs p_{T particle}",
+   200,0,120,200,0,5); 
   fhPtRatAwayParton->SetYTitle("ratio");
   fhPtRatAwayParton->SetXTitle("p_{T particle} (GeV/c)");
   outputContainer->Add(fhPtRatAwayParton);
   
   return outputContainer;
-
+  
 }
 
-//____________________________________________________________________________
+//____________________________________________________
 void AliAnaParticlePartonCorrelation::InitParameters()
 {
   
@@ -158,10 +123,10 @@ void AliAnaParticlePartonCorrelation::InitParameters()
   SetInputAODName("PWG4Particle");
   SetAODObjArrayName("Partons");  
   AddToHistogramsName("AnaPartonCorr_");
-
+  
 }
 
-//__________________________________________________________________
+//_____________________________________________________________________
 void AliAnaParticlePartonCorrelation::Print(const Option_t * opt) const
 {
   
@@ -170,11 +135,11 @@ void AliAnaParticlePartonCorrelation::Print(const Option_t * opt) const
     return;
   
   printf("**** Print %s %s ****\n", GetName(), GetTitle() ) ;
-  AliAnaPartCorrBaseClass::Print(" ");
-
+  AliAnaCaloTrackCorrBaseClass::Print(" ");
+  
 } 
 
-//__________________________________________________________________
+//__________________________________________________________
 void  AliAnaParticlePartonCorrelation::MakeAnalysisFillAOD()  
 {
   //Particle-Parton Correlation Analysis, create AODs
@@ -187,8 +152,8 @@ void  AliAnaParticlePartonCorrelation::MakeAnalysisFillAOD()
   }
        
   if(strcmp(GetInputAODBranch()->GetClass()->GetName(), "AliAODPWG4ParticleCorrelation")){
-       printf("AliAnaParticlePartonCorrelation::MakeAnalysisFillAOD() - Wrong type of AOD object, change AOD class name in input AOD: It should be <AliAODPWG4ParticleCorrelation> and not <%s> \n",GetInputAODBranch()->GetClass()->GetName());
-       abort();
+    printf("AliAnaParticlePartonCorrelation::MakeAnalysisFillAOD() - Wrong type of AOD object, change AOD class name in input AOD: It should be <AliAODPWG4ParticleCorrelation> and not <%s> \n",GetInputAODBranch()->GetClass()->GetName());
+    abort();
   }    
        
   if(GetDebug() > 1){
@@ -212,7 +177,7 @@ void  AliAnaParticlePartonCorrelation::MakeAnalysisFillAOD()
     }
     
     //Fill AOD reference only with partons
-
+    
     //Array with reference to partons, initialize
     TObjArray * objarray  = NULL;
     Int_t nrefs = 0;
@@ -228,16 +193,16 @@ void  AliAnaParticlePartonCorrelation::MakeAnalysisFillAOD()
       }
       objarray->Add(parton);
     }//parton loop
-       
+    
     if(objarray->GetEntriesFast() > 0) particle->AddObjArray(objarray);
-
+    
   }//Aod branch loop
   
   if(GetDebug() > 1) printf("AliAnaParticlePartonCorrelation::MakeAnalysisFillAOD() - End fill AODs \n");
 }
 
-//__________________________________________________________________
-void  AliAnaParticlePartonCorrelation::MakeAnalysisFillHistograms()  
+//_________________________________________________________________
+void  AliAnaParticlePartonCorrelation::MakeAnalysisFillHistograms() 
 {
   //Particle-Parton Correlation Analysis, fill histograms
   if(!GetInputAODBranch()){
@@ -254,7 +219,7 @@ void  AliAnaParticlePartonCorrelation::MakeAnalysisFillHistograms()
     printf("AliAnaParticlePartonCorrelation::MakeAnalysisFillHistograms() - No Stack available, STOP\n");
     abort();
   }
+  
   //Loop on stored AOD particles
   Int_t naod = GetInputAODBranch()->GetEntriesFast();
   TParticle *  mom = NULL ;
@@ -268,13 +233,13 @@ void  AliAnaParticlePartonCorrelation::MakeAnalysisFillHistograms()
     Int_t imom = particle->GetLabel();
     Int_t iparent  = 2000;
     Int_t iawayparent = -1;
-
+    
     TObjArray * objarray = particle->GetObjArray(GetAODObjArrayName());
     if(!(objarray) || (objarray->GetEntriesFast() < 7) ) {
       printf("AliAnaParticlePartonCorrelation::MakeAnalysisFillHistograms() - Reference list with partons not filled, STOP analysis\n");
       abort();
     }
-
+    
     //Check and get indeces of mother and parton    
     if(imom < 8 ) iparent = imom ;   //mother is already a parton
     else if (imom <  stack->GetNtrack()) {
@@ -289,7 +254,7 @@ void  AliAnaParticlePartonCorrelation::MakeAnalysisFillHistograms()
             iparent = mom->GetFirstMother();
           }
           else iparent = -1;
-        //cout<<" while iparent "<<iparent<<endl;
+          //cout<<" while iparent "<<iparent<<endl;
         } 
       }
     }
@@ -301,7 +266,7 @@ void  AliAnaParticlePartonCorrelation::MakeAnalysisFillHistograms()
       if(GetDebug() > 0 ) printf("AliAnaParticlePartonCorrelation::MakeAnalysisFillHistograms() - Failed to find appropriate parton, index %d", iparent);
       continue ;
     }
-
+    
     //Near parton is the parton that fragmented and created the mother    
     TParticle * nearParton = (TParticle*) objarray->At(iparent);
     Float_t  ptNearParton    = nearParton->Pt();
@@ -319,7 +284,7 @@ void  AliAnaParticlePartonCorrelation::MakeAnalysisFillHistograms()
       printf("AliAnaParticlePartonCorrelation::MakeAnalysisFillHistograms() - Parent parton is not final state, skip \n");
       continue;
     }
-
+    
     //Away parton is the other final parton.
     TParticle * awayParton = (TParticle*) objarray->At(iawayparent);
     Float_t  ptAwayParton    = awayParton->Pt();
@@ -331,7 +296,7 @@ void  AliAnaParticlePartonCorrelation::MakeAnalysisFillHistograms()
     fhPtRatAwayParton->Fill(ptTrigg,ptAwayParton/ptTrigg);
     
   }
-
+  
   if(GetDebug() > 1) printf("AliAnaParticlePartonCorrelation::MakeAnalysisFillHistograms() - End fill histograms \n");
   
 } 
index 0ae06d1066a2a2060580e76f17e150791d93fb2e..1e01c89c3387c67250c87eac42a2a43f951bcbce 100755 (executable)
@@ -2,7 +2,6 @@
 #define ALIANAPARTICLEPARTONCORRELATION_H
 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
  * See cxx source for full Copyright notice     */
-/* $Id: */
 
 //_________________________________________________________________________
 // Class that contains the algorithm for the analysis of particle-parton correlation
@@ -13,9 +12,9 @@
 class TH2F ;
 
 // --- ANALYSIS ---
-#include "AliAnaPartCorrBaseClass.h"
+#include "AliAnaCaloTrackCorrBaseClass.h"
 
-class AliAnaParticlePartonCorrelation : public AliAnaPartCorrBaseClass {
+class AliAnaParticlePartonCorrelation : public AliAnaCaloTrackCorrBaseClass {
        
 public:
   
index c1842eaf4cc52ab81fc2089b4457c2dac26bcb38..cb9cc755d7a7334bfaa460b9754066f697dcc1ba 100755 (executable)
@@ -12,7 +12,6 @@
  * about the suitability of this software for any purpose. It is          *
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
-/* $Id: AliAnaPhoton.cxx 28688 2008-09-11 15:04:07Z gconesab $ */
 
 //_________________________________________________________________________
 //
@@ -54,7 +53,7 @@ ClassImp(AliAnaPhoton)
   
 //____________________________
 AliAnaPhoton::AliAnaPhoton() : 
-    AliAnaPartCorrBaseClass(),    fCalorimeter(""), 
+    AliAnaCaloTrackCorrBaseClass(),    fCalorimeter(""), 
     fMinDist(0.),                 fMinDist2(0.),                fMinDist3(0.), 
     fRejectTrackMatch(0),         fTimeCutMin(-10000),          fTimeCutMax(10000),         
     fNCellsCut(0),                fFillSSHistograms(kFALSE),    
@@ -953,12 +952,12 @@ TList *  AliAnaPhoton::GetCreateOutputObjects()
   TList * outputContainer = new TList() ; 
   outputContainer->SetName("PhotonHistos") ; 
        
-  Int_t nptbins  = GetHistoPtBins();  Float_t ptmax  = GetHistoPtMax();  Float_t ptmin  = GetHistoPtMin(); 
-  Int_t nphibins = GetHistoPhiBins(); Float_t phimax = GetHistoPhiMax(); Float_t phimin = GetHistoPhiMin(); 
-  Int_t netabins = GetHistoEtaBins(); Float_t etamax = GetHistoEtaMax(); Float_t etamin = GetHistoEtaMin();    
-  Int_t ssbins   = GetHistoShowerShapeBins();  Float_t ssmax   = GetHistoShowerShapeMax();  Float_t ssmin   = GetHistoShowerShapeMin();
-  Int_t nbins    = GetHistoNClusterCellBins(); Int_t   nmax    = GetHistoNClusterCellMax(); Int_t   nmin    = GetHistoNClusterCellMin(); 
-  Int_t ntimebins= GetHistoTimeBins();         Float_t timemax = GetHistoTimeMax();         Float_t timemin = GetHistoTimeMin();       
+  Int_t nptbins  = GetHistogramRanges()->GetHistoPtBins();  Float_t ptmax  = GetHistogramRanges()->GetHistoPtMax();  Float_t ptmin  = GetHistogramRanges()->GetHistoPtMin(); 
+  Int_t nphibins = GetHistogramRanges()->GetHistoPhiBins(); Float_t phimax = GetHistogramRanges()->GetHistoPhiMax(); Float_t phimin = GetHistogramRanges()->GetHistoPhiMin(); 
+  Int_t netabins = GetHistogramRanges()->GetHistoEtaBins(); Float_t etamax = GetHistogramRanges()->GetHistoEtaMax(); Float_t etamin = GetHistogramRanges()->GetHistoEtaMin();  
+  Int_t ssbins   = GetHistogramRanges()->GetHistoShowerShapeBins();  Float_t ssmax   = GetHistogramRanges()->GetHistoShowerShapeMax();  Float_t ssmin   = GetHistogramRanges()->GetHistoShowerShapeMin();
+  Int_t nbins    = GetHistogramRanges()->GetHistoNClusterCellBins(); Int_t   nmax    = GetHistogramRanges()->GetHistoNClusterCellMax(); Int_t   nmin    = GetHistogramRanges()->GetHistoNClusterCellMin(); 
+  Int_t ntimebins= GetHistogramRanges()->GetHistoTimeBins();         Float_t timemax = GetHistogramRanges()->GetHistoTimeMax();         Float_t timemin = GetHistogramRanges()->GetHistoTimeMin();       
 
   TString cut[] = {"Open","Reader","E","Time","NCells","Fidutial","Matching","Bad","PID"};
   for (Int_t i = 0; i < 9 ;  i++) 
@@ -2015,7 +2014,7 @@ void AliAnaPhoton::Print(const Option_t * opt) const
     return;
   
   printf("**** Print %s %s ****\n", GetName(), GetTitle() ) ;
-  AliAnaPartCorrBaseClass::Print(" ");
+  AliAnaCaloTrackCorrBaseClass::Print(" ");
 
   printf("Calorimeter            =     %s\n", fCalorimeter.Data()) ;
   printf("Min Distance to Bad Channel   = %2.1f\n",fMinDist);
index e22eb639f904ef699bc308b7083c71eda600c46c..d09bfc1b9fadea71284841a2d514826f2659c6e8 100755 (executable)
@@ -2,7 +2,6 @@
 #define ALIANAPHOTON_H
 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
  * See cxx source for full Copyright notice     */
-/* $Id: AliAnaPhoton.h 27413 2008-07-18 13:28:12Z gconesab $ */
 
 //_________________________________________________________________________
 //
@@ -23,9 +22,9 @@ class TObjString;
 class TList ;
 
 // --- ANALYSIS system ---
-#include "AliAnaPartCorrBaseClass.h"
+#include "AliAnaCaloTrackCorrBaseClass.h"
 
-class AliAnaPhoton : public AliAnaPartCorrBaseClass {
+class AliAnaPhoton : public AliAnaCaloTrackCorrBaseClass {
 
  public: 
   AliAnaPhoton() ;              // default ctor
index 55d506e943466e059d1fe635ca069544c3a2496f..d39b9e243c05d5472a02a26aee24c1875bd83017 100755 (executable)
@@ -47,7 +47,7 @@ ClassImp(AliAnaPhotonConvInCalo)
 
 //________________________________________
 AliAnaPhotonConvInCalo::AliAnaPhotonConvInCalo() : 
-AliAnaPartCorrBaseClass(),   
+AliAnaCaloTrackCorrBaseClass(),   
 fRemoveConvertedPair(kFALSE), 
 fAddConvertedPairsToAOD(kFALSE), 
 fMassCut(0),                  
@@ -114,9 +114,9 @@ TList *  AliAnaPhotonConvInCalo::GetCreateOutputObjects()
   TList * outputContainer = new TList() ; 
   outputContainer->SetName("PhotonConvInCaloHistos") ; 
        
-  Int_t nptbins  = GetHistoPtBins();  Float_t ptmax  = GetHistoPtMax();  Float_t ptmin  = GetHistoPtMin(); 
-  Int_t nphibins = GetHistoPhiBins(); Float_t phimax = GetHistoPhiMax(); Float_t phimin = GetHistoPhiMin(); 
-  Int_t netabins = GetHistoEtaBins(); Float_t etamax = GetHistoEtaMax(); Float_t etamin = GetHistoEtaMin();    
+  Int_t nptbins  = GetHistogramRanges()->GetHistoPtBins();  Float_t ptmax  = GetHistogramRanges()->GetHistoPtMax();  Float_t ptmin  = GetHistogramRanges()->GetHistoPtMin(); 
+  Int_t nphibins = GetHistogramRanges()->GetHistoPhiBins(); Float_t phimax = GetHistogramRanges()->GetHistoPhiMax(); Float_t phimin = GetHistogramRanges()->GetHistoPhiMin(); 
+  Int_t netabins = GetHistogramRanges()->GetHistoEtaBins(); Float_t etamax = GetHistogramRanges()->GetHistoEtaMax(); Float_t etamin = GetHistogramRanges()->GetHistoEtaMin();  
   
   fhPtPhotonConv  = new TH1F("hPtPhotonConv","Number of #gamma over calorimeter, conversion",nptbins,ptmin,ptmax); 
   fhPtPhotonConv->SetYTitle("N");
@@ -860,7 +860,7 @@ void AliAnaPhotonConvInCalo::Print(const Option_t * opt) const
     return;
   
   printf("**** Print %s %s ****\n", GetName(), GetTitle() ) ;
-  AliAnaPartCorrBaseClass::Print(" ");
+  AliAnaCaloTrackCorrBaseClass::Print(" ");
   
   printf("Add conversion pair to AOD           = %d\n",fAddConvertedPairsToAOD);
   printf("Conversion pair mass cut             = %f\n",fMassCut);
index ac02070514ceb547623ceb3312e9dc18e8b3c8fb..2f9de34edb8f6d61d7197d03fc2f71eba073ee5f 100755 (executable)
@@ -20,18 +20,13 @@ class TObjString;
 class TList ;
 
 // --- ANALYSIS system ---
-#include "AliAnaPartCorrBaseClass.h"
+#include "AliAnaCaloTrackCorrBaseClass.h"
 
-class AliAnaPhotonConvInCalo : public AliAnaPartCorrBaseClass {
+class AliAnaPhotonConvInCalo : public AliAnaCaloTrackCorrBaseClass {
 
  public: 
   AliAnaPhotonConvInCalo() ;              // default ctor
   virtual ~AliAnaPhotonConvInCalo() { ; } // virtual dtor
- private:
-  AliAnaPhotonConvInCalo(const AliAnaPhotonConvInCalo & g) ;               // cpy ctor
-  AliAnaPhotonConvInCalo & operator = (const AliAnaPhotonConvInCalo & g) ; // cpy assignment
-
- public:
        
   //---------------------------------------
   // General analysis frame methods
@@ -147,7 +142,10 @@ class AliAnaPhotonConvInCalo : public AliAnaPartCorrBaseClass {
   TH2F * fhConvDistMCConversion;          //! Calculated conversion distance vs real distance to vertex       
   TH2F * fhConvDistMCConversionCuts;      //! Calculated conversion distance vs real distance to vertex        
 
-   ClassDef(AliAnaPhotonConvInCalo,1)
+  AliAnaPhotonConvInCalo(              const AliAnaPhotonConvInCalo & g) ; // cpy ctor
+  AliAnaPhotonConvInCalo & operator = (const AliAnaPhotonConvInCalo & g) ; // cpy assignment
+  
+  ClassDef(AliAnaPhotonConvInCalo,1)
 
 } ;
  
index ae4c254d5b666bd0383e0efbc5bd07abde0113d9..2dcda3eb6ad35f8831d41a3af7c5cc662472b2be 100755 (executable)
@@ -12,7 +12,6 @@
  * about the suitability of this software for any purpose. It is          *
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
-/* $Id: $ */
 
 //_________________________________________________________________________
 // Class to collect two-photon invariant mass distributions for
@@ -21,7 +20,7 @@
 // it will do nothing if executed alone
 //
 //-- Author: Dmitri Peressounko (RRC "KI") 
-//-- Adapted to PartCorr frame by Lamia Benhabib (SUBATECH)
+//-- Adapted to CaloTrackCorr frame by Lamia Benhabib (SUBATECH)
 //-- and Gustavo Conesa (INFN-Frascati)
 //_________________________________________________________________________
 
@@ -59,7 +58,7 @@
 ClassImp(AliAnaPi0)
 
 //________________________________________________________________________________________________________________________________________________  
-AliAnaPi0::AliAnaPi0() : AliAnaPartCorrBaseClass(),
+AliAnaPi0::AliAnaPi0() : AliAnaCaloTrackCorrBaseClass(),
 fDoOwnMix(kFALSE),           fEventsList(0x0), 
 fCalorimeter(""),            fNModules(12),              
 fUseAngleCut(kFALSE),        fUseAngleEDepCut(kFALSE),     fAngleCut(0),                 fAngleMaxCut(7.),
@@ -262,25 +261,25 @@ TList * AliAnaPi0::GetCreateOutputObjects()
   char key[buffersize] ;
   char title[buffersize] ;
   
-  Int_t nptbins   = GetHistoPtBins();
-  Int_t nphibins  = GetHistoPhiBins();
-  Int_t netabins  = GetHistoEtaBins();
-  Float_t ptmax   = GetHistoPtMax();
-  Float_t phimax  = GetHistoPhiMax();
-  Float_t etamax  = GetHistoEtaMax();
-  Float_t ptmin   = GetHistoPtMin();
-  Float_t phimin  = GetHistoPhiMin();
-  Float_t etamin  = GetHistoEtaMin();  
+  Int_t nptbins   = GetHistogramRanges()->GetHistoPtBins();
+  Int_t nphibins  = GetHistogramRanges()->GetHistoPhiBins();
+  Int_t netabins  = GetHistogramRanges()->GetHistoEtaBins();
+  Float_t ptmax   = GetHistogramRanges()->GetHistoPtMax();
+  Float_t phimax  = GetHistogramRanges()->GetHistoPhiMax();
+  Float_t etamax  = GetHistogramRanges()->GetHistoEtaMax();
+  Float_t ptmin   = GetHistogramRanges()->GetHistoPtMin();
+  Float_t phimin  = GetHistogramRanges()->GetHistoPhiMin();
+  Float_t etamin  = GetHistogramRanges()->GetHistoEtaMin();    
        
-  Int_t nmassbins = GetHistoMassBins();
-  Int_t nasymbins = GetHistoAsymmetryBins();
-  Float_t massmax = GetHistoMassMax();
-  Float_t asymmax = GetHistoAsymmetryMax();
-  Float_t massmin = GetHistoMassMin();
-  Float_t asymmin = GetHistoAsymmetryMin();
-  Int_t ntrmbins  = GetHistoTrackMultiplicityBins();
-  Int_t ntrmmax   = GetHistoTrackMultiplicityMax();
-  Int_t ntrmmin   = GetHistoTrackMultiplicityMin(); 
+  Int_t nmassbins = GetHistogramRanges()->GetHistoMassBins();
+  Int_t nasymbins = GetHistogramRanges()->GetHistoAsymmetryBins();
+  Float_t massmax = GetHistogramRanges()->GetHistoMassMax();
+  Float_t asymmax = GetHistogramRanges()->GetHistoAsymmetryMax();
+  Float_t massmin = GetHistogramRanges()->GetHistoMassMin();
+  Float_t asymmin = GetHistogramRanges()->GetHistoAsymmetryMin();
+  Int_t ntrmbins  = GetHistogramRanges()->GetHistoTrackMultiplicityBins();
+  Int_t ntrmmax   = GetHistogramRanges()->GetHistoTrackMultiplicityMax();
+  Int_t ntrmmin   = GetHistogramRanges()->GetHistoTrackMultiplicityMin(); 
   
   if(GetNCentrBin() > 1 && (fUseAverCellEBins||fUseAverClusterEBins||fUseAverClusterEDenBins)){
     
@@ -985,7 +984,7 @@ void AliAnaPi0::Print(const Option_t * /*opt*/) const
 {
   //Print some relevant parameters set for the analysis
   printf("**** Print %s %s ****\n", GetName(), GetTitle() ) ;
-  AliAnaPartCorrBaseClass::Print(" ");
+  AliAnaCaloTrackCorrBaseClass::Print(" ");
   
   printf("Number of bins in Centrality:  %d \n",GetNCentrBin()) ;
   printf("Number of bins in Z vert. pos: %d \n",GetNZvertBin()) ;
@@ -2014,7 +2013,7 @@ void AliAnaPi0::MakeAnalysisFillHistograms()
               }// pid bit cut loop
             }// icell loop
           }// pt cut loop
-          if(GetHistoTrackMultiplicityBins()){
+          if(GetHistogramRanges()->GetHistoTrackMultiplicityBins()){
             for(Int_t iasym = 0; iasym < fNAsymCuts; iasym++){
               if(a < fAsymCuts[iasym])fhRePtMult[iasym]->Fill(pt,GetTrackMultiplicity(),m) ;
             }
index ca2eaf6dc30d51c0bf09a06ba605304aa3a6663f..2034b4474a5a68538f57909731b200eb71a5fb49 100755 (executable)
@@ -2,7 +2,6 @@
 #define ALIANAPI0_H
 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
  * See cxx source for full Copyright notice     */
-/* $Id: $ */
 
 //_________________________________________________________________________
 // Class to fill two-photon invariant mass histograms 
@@ -11,7 +10,7 @@
 // it will do nothing if executed alone
 //
 //-- Author: Dmitri Peressounko (RRC "KI")
-//-- Adapted to PartCorr frame by Lamia Benhabib (SUBATECH)
+//-- Adapted to CaloTrackCorr frame by Lamia Benhabib (SUBATECH)
 //-- and Gustavo Conesa (INFN-Frascati)
 
 //Root
@@ -21,12 +20,12 @@ class TH2F ;
 class TObjString;
 
 //Analysis
-#include "AliAnaPartCorrBaseClass.h"
+#include "AliAnaCaloTrackCorrBaseClass.h"
 class AliAODEvent ;
 class AliESDEvent ;
 class AliAODPWG4Particle ;
 
-class AliAnaPi0 : public AliAnaPartCorrBaseClass {
+class AliAnaPi0 : public AliAnaCaloTrackCorrBaseClass {
   
  public:   
   AliAnaPi0() ; // default ctor
@@ -306,8 +305,8 @@ class AliAnaPi0 : public AliAnaPartCorrBaseClass {
   TH2F *   fhReMCFromNotConversion ;   //! Invariant mass of 2 clusters not originated in conversions
   TH2F *   fhReMCFromMixConversion ;   //! Invariant mass of 2 clusters one from conversion and the other not
 
-  AliAnaPi0(const AliAnaPi0 & g) ; // cpy ctor
-  AliAnaPi0 & operator = (const AliAnaPi0 & api0) ;//cpy assignment
+  AliAnaPi0(              const AliAnaPi0 & api0) ; // cpy ctor
+  AliAnaPi0 & operator = (const AliAnaPi0 & api0) ; // cpy assignment
   
   ClassDef(AliAnaPi0,22)
 } ;
index 9f01735ab97fe619e9f1404a3ea727bda5d7f5b6..a6b2393a9b113385f99f94d8256e10269d5aa78a 100755 (executable)
@@ -12,7 +12,6 @@
  * about the suitability of this software for any purpose. It is          *
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
-/* $Id: AliAnaPi0EbE.cxx 28688 2008-09-11 15:04:07Z gconesab $ */
 
 //_________________________________________________________________________
 // Class for the analysis of high pT pi0 event by event
@@ -48,8 +47,8 @@ ClassImp(AliAnaPi0EbE)
   
 //____________________________
 AliAnaPi0EbE::AliAnaPi0EbE() : 
-    AliAnaPartCorrBaseClass(),    fAnaType(kIMCalo),            fCalorimeter(""),
-    fMinDist(0.),fMinDist2(0.),   fMinDist3(0.),                     fFillWeightHistograms(kFALSE),
+    AliAnaCaloTrackCorrBaseClass(),fAnaType(kIMCalo),           fCalorimeter(""),
+    fMinDist(0.),fMinDist2(0.),    fMinDist3(0.),                    fFillWeightHistograms(kFALSE),
     fInputAODGammaConvName(""),
     //Histograms
     fhPtPi0(0),                   fhEPi0(0),                    
@@ -308,13 +307,13 @@ TList *  AliAnaPi0EbE::GetCreateOutputObjects()
   TList * outputContainer = new TList() ; 
   outputContainer->SetName("Pi0EbEHistos") ; 
   
-  Int_t nptbins  = GetHistoPtBins();           Float_t ptmax  = GetHistoPtMax();           Float_t ptmin  = GetHistoPtMin();
-  Int_t nphibins = GetHistoPhiBins();          Float_t phimax = GetHistoPhiMax();          Float_t phimin = GetHistoPhiMin();
-  Int_t netabins = GetHistoEtaBins();          Float_t etamax = GetHistoEtaMax();          Float_t etamin = GetHistoEtaMin();
-  Int_t ssbins   = GetHistoShowerShapeBins();  Float_t ssmax  = GetHistoShowerShapeMax();  Float_t ssmin  = GetHistoShowerShapeMin();
-  Int_t tdbins   = GetHistoDiffTimeBins() ;    Float_t tdmax  = GetHistoDiffTimeMax();     Float_t tdmin  = GetHistoDiffTimeMin();
-  Int_t tbins    = GetHistoTimeBins() ;        Float_t tmax   = GetHistoTimeMax();         Float_t tmin   = GetHistoTimeMin();
-  Int_t nbins    = GetHistoNClusterCellBins(); Int_t   nmax   = GetHistoNClusterCellMax(); Int_t   nmin   = GetHistoNClusterCellMin(); 
+  Int_t nptbins  = GetHistogramRanges()->GetHistoPtBins();           Float_t ptmax  = GetHistogramRanges()->GetHistoPtMax();           Float_t ptmin  = GetHistogramRanges()->GetHistoPtMin();
+  Int_t nphibins = GetHistogramRanges()->GetHistoPhiBins();          Float_t phimax = GetHistogramRanges()->GetHistoPhiMax();          Float_t phimin = GetHistogramRanges()->GetHistoPhiMin();
+  Int_t netabins = GetHistogramRanges()->GetHistoEtaBins();          Float_t etamax = GetHistogramRanges()->GetHistoEtaMax();          Float_t etamin = GetHistogramRanges()->GetHistoEtaMin();
+  Int_t ssbins   = GetHistogramRanges()->GetHistoShowerShapeBins();  Float_t ssmax  = GetHistogramRanges()->GetHistoShowerShapeMax();  Float_t ssmin  = GetHistogramRanges()->GetHistoShowerShapeMin();
+  Int_t tdbins   = GetHistogramRanges()->GetHistoDiffTimeBins() ;    Float_t tdmax  = GetHistogramRanges()->GetHistoDiffTimeMax();     Float_t tdmin  = GetHistogramRanges()->GetHistoDiffTimeMin();
+  Int_t tbins    = GetHistogramRanges()->GetHistoTimeBins() ;        Float_t tmax   = GetHistogramRanges()->GetHistoTimeMax();         Float_t tmin   = GetHistogramRanges()->GetHistoTimeMin();
+  Int_t nbins    = GetHistogramRanges()->GetHistoNClusterCellBins(); Int_t   nmax   = GetHistogramRanges()->GetHistoNClusterCellMax(); Int_t   nmin   = GetHistogramRanges()->GetHistoNClusterCellMin(); 
 
   fhPtPi0  = new TH1F("hPtPi0","Number of identified  #pi^{0} decay",nptbins,ptmin,ptmax); 
   fhPtPi0->SetYTitle("N");
@@ -1089,7 +1088,7 @@ void AliAnaPi0EbE::Print(const Option_t * opt) const
     return;
   
   printf("**** Print %s %s ****\n", GetName(), GetTitle() ) ;
-  AliAnaPartCorrBaseClass::Print("");
+  AliAnaCaloTrackCorrBaseClass::Print("");
   printf("Analysis Type = %d \n",  fAnaType) ;
   if(fAnaType == kSSCalo){     
     printf("Calorimeter            =     %s\n", fCalorimeter.Data()) ;
index d9f7ca87214eeee980fdcd14f52d56587daea050..b7c9a1e8495522e53c64efe57dfda49a223903bd 100755 (executable)
@@ -2,7 +2,6 @@
 #define ALIANAPI0EBE_H
 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
  * See cxx source for full Copyright notice     */
-/* $Id: AliAnaPi0EbE.h 27413 2008-07-18 13:28:12Z gconesab $ */
 
 //_________________________________________________________________________
 //
@@ -21,9 +20,9 @@ class TList ;
 class TObjString;
 
 // --- ANALYSIS system ---
-#include "AliAnaPartCorrBaseClass.h"
+#include "AliAnaCaloTrackCorrBaseClass.h"
 
-class AliAnaPi0EbE : public AliAnaPartCorrBaseClass {
+class AliAnaPi0EbE : public AliAnaCaloTrackCorrBaseClass {
 
  public: 
   AliAnaPi0EbE() ; // default ctor
index 4c2dabbe556a1e699ca9ef457c5df5e6662df129..0da62eefc92529b320b52947558d2c1daada2e04 100644 (file)
@@ -12,7 +12,6 @@
  * about the suitability of this software for any purpose. It is          *
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
-/* $Id: AliAnaPhoton.cxx 28688 2008-09-11 15:04:07Z gconesab $ */
 
 //_________________________________________________________________________
 //
@@ -43,7 +42,6 @@
 #include "AliAODCaloCluster.h"
 #include "AliAODMCParticle.h"
 #include "AliAnalysisManager.h"
-#include "AliAnalysisTaskParticleCorrelation.h"
 #include "AliAODEvent.h"
 
 
@@ -51,7 +49,7 @@ ClassImp(AliAnaShowerParameter)
 
 //____________________________________________________________________________
 AliAnaShowerParameter::AliAnaShowerParameter() : 
-AliAnaPartCorrBaseClass(), fCalorimeter(""), fNCellsCutMin(0),
+AliAnaCaloTrackCorrBaseClass(), fCalorimeter(""), fNCellsCutMin(0),
 fNCellsCutMax(0), fLambdaCut(0), fTimeCutMin(-1), fTimeCutMax(9999999),
 fhNClusters(0), fhNCellCluster(0), fhEtaPhiPtCluster(0), 
 fhLambdaPtCluster(0), 
@@ -115,15 +113,15 @@ TList *  AliAnaShowerParameter::GetCreateOutputObjects()
   TList * outputContainer = new TList() ; 
   outputContainer->SetName("PhotonHistos") ; 
        
-  Int_t nptbins  = GetHistoPtBins();
-  Int_t nphibins = GetHistoPhiBins();
-  Int_t netabins = GetHistoEtaBins();
-  Float_t ptmax  = GetHistoPtMax();
-  Float_t phimax = GetHistoPhiMax();
-  Float_t etamax = GetHistoEtaMax();
-  Float_t ptmin  = GetHistoPtMin();
-  Float_t phimin = GetHistoPhiMin();
-  Float_t etamin = GetHistoEtaMin();   
+  Int_t nptbins  = GetHistogramRanges()->GetHistoPtBins();
+  Int_t nphibins = GetHistogramRanges()->GetHistoPhiBins();
+  Int_t netabins = GetHistogramRanges()->GetHistoEtaBins();
+  Float_t ptmax  = GetHistogramRanges()->GetHistoPtMax();
+  Float_t phimax = GetHistogramRanges()->GetHistoPhiMax();
+  Float_t etamax = GetHistogramRanges()->GetHistoEtaMax();
+  Float_t ptmin  = GetHistogramRanges()->GetHistoPtMin();
+  Float_t phimin = GetHistogramRanges()->GetHistoPhiMin();
+  Float_t etamin = GetHistogramRanges()->GetHistoEtaMin();     
   
   //General non-MC Cluster histograms
   fhNClusters = new TH1F ("hNClusters","NClusters",21,-0.5,20.5); 
@@ -336,7 +334,7 @@ void AliAnaShowerParameter::Print(const Option_t * opt) const
     return;
   
   printf("**** Print %s %s ****\n", GetName(), GetTitle() ) ;
-  AliAnaPartCorrBaseClass::Print(" ");
+  AliAnaCaloTrackCorrBaseClass::Print(" ");
   printf("Calorimeter            =     %s\n", fCalorimeter.Data()) ;
   printf("Min number of cells in cluster is        > %f \n", fNCellsCutMin);
   printf("Max number of cells in cluster is        > %f \n", fNCellsCutMax);
index 1093089ff44c11ef0ea72e41a947322491472416..cdae4a8c0ebddad2890be1797873e83b52fabfa5 100644 (file)
@@ -2,7 +2,6 @@
 #define ALIANASHOWERPARAMETER_H
 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
  * See cxx source for full Copyright notice     */
-/* $Id: AliAnaShowerParameter.h 27413 2008-07-18 13:28:12Z gconesab $ */
 
 //_________________________________________________________________________
 //
@@ -19,14 +18,12 @@ class TH1F;
 class TString ;
 
 // --- ANALYSIS system ---
-#include "AliAnaPartCorrBaseClass.h"
-//#include "AliStack.h"
-//#include "TParticle.h"
+#include "AliAnaCaloTrackCorrBaseClass.h"
 class AliStack;
 class TParticle;
 
 class TList ;
-class AliAnaShowerParameter : public AliAnaPartCorrBaseClass {
+class AliAnaShowerParameter : public AliAnaCaloTrackCorrBaseClass {
 
 public: 
 
similarity index 91%
rename from PWG4/macros/AddTaskPartCorr.C
rename to PWG4/macros/AddTaskCaloTrackCorr.C
index 28d426f171e439ca6e1290b5b31650b7fd97e308..1405b52a4a8bb3b052507da0d3a2fe9cca73df7e 100644 (file)
@@ -12,7 +12,7 @@ TString kData          = "ESD";
 TString kInputDataType = "ESD";
 TString kCalorimeter   = "EMCAL";
 
-AliAnalysisTaskParticleCorrelation *AddTaskPartCorr(
+AliAnalysisTaskCaloTrackCorrelation *AddTaskCaloTrackCorr(
                                                     const TString data          = "AOD",
                                                     const TString calorimeter   = "EMCAL", 
                                                     const Bool_t  printSettings = kFALSE,
@@ -66,7 +66,7 @@ AliAnalysisTaskParticleCorrelation *AddTaskPartCorr(
   
   // #### Configure analysis ####
     
-  AliAnaPartCorrMaker * maker = new AliAnaPartCorrMaker();
+  AliAnaCaloTrackCorrMaker * maker = new AliAnaCaloTrackCorrMaker();
   
   // General frame setting and configuration
   maker->SetReader   (ConfigureReader()   ); 
@@ -74,7 +74,6 @@ AliAnalysisTaskParticleCorrelation *AddTaskPartCorr(
   
   // Analysis tasks setting and configuration
   Int_t n = 0;//Analysis number, order is important
-  
   maker->AddAnalysis(ConfigureQAAnalysis()    , n++);  
 
   // Isolation settings
@@ -88,7 +87,7 @@ AliAnalysisTaskParticleCorrelation *AddTaskPartCorr(
     maker->AddAnalysis(ConfigureIsolationAnalysis("Hadron",partInCone,thresType), n++); // track isolation
     maker->AddAnalysis(ConfigureHadronCorrelationAnalysis("Hadron",kFALSE), n++);       // track-track correlation
     maker->AddAnalysis(ConfigureHadronCorrelationAnalysis("Hadron",kTRUE) , n++);       // Isolated track-track correlation
-  }  
+  } 
   else
   {
     maker->AddAnalysis(ConfigurePhotonAnalysis(), n++); // Photon cluster selection
@@ -98,18 +97,21 @@ AliAnalysisTaskParticleCorrelation *AddTaskPartCorr(
     
     maker->AddAnalysis(ConfigureIsolationAnalysis("Photon", partInCone,thresType), n++); // Photon isolation
     maker->AddAnalysis(ConfigureIsolationAnalysis("Pi0",    partInCone,thresType), n++); // Pi0 isolation
-        
+  
     maker->AddAnalysis(ConfigureHadronCorrelationAnalysis("Photon",kFALSE), n++); // Gamma hadron correlation
     maker->AddAnalysis(ConfigureHadronCorrelationAnalysis("Photon",kTRUE) , n++); // Isolated gamma hadron correlation
     maker->AddAnalysis(ConfigureHadronCorrelationAnalysis("Pi0"   ,kFALSE), n++); // Pi0 hadron correlation
     maker->AddAnalysis(ConfigureHadronCorrelationAnalysis("Pi0"   ,kTRUE) , n++); // Isolated pi0 hadron correlation
-    
-    //maker->AddAnalysis(ConfigurePi0EbEAnalysis("Pi0", AliAnaPi0EbE::kIMCaloTracks), n++); // Pi0 (calo+conversion) event by event selection, 
-    // and photon tagging from decay, need to execute at the same time conversions analysis
-    //maker->AddAnalysis(ConfigureIsolationAnalysis("Pi0Conv",partInCone,thresType), n++); // Pi0 (Calo+Conv) isolation
-    
+    /*
+    if(kInputDataType=="ESD"){
+      printf("* Configure conversion analysis in part corr\n");
+      maker->AddAnalysis(ConfigurePi0EbEAnalysis("Pi0", AliAnaPi0EbE::kIMCaloTracks), n++); // Pi0 (calo+conversion) event by event selection, 
+      // and photon tagging from decay, need to execute at the same time conversions analysis
+      maker->AddAnalysis(ConfigureIsolationAnalysis("Pi0Conv",partInCone,thresType), n++); // Pi0 (Calo+Conv) isolation
+    }
+    */
   }
-  
+
   maker->SetAnaDebug(-1)  ;
   maker->SwitchOnHistogramsMaker()  ;
   if(kData.Contains("delta")) maker->SwitchOffAODsMaker() ;
@@ -121,7 +123,7 @@ AliAnalysisTaskParticleCorrelation *AddTaskPartCorr(
   
   // Create task
   
-  AliAnalysisTaskParticleCorrelation * task = new AliAnalysisTaskParticleCorrelation (Form("PartCorr%s_Trig%s_Cl%s",kCalorimeter.Data(),kTrig.Data(),kClusterArray.Data()));
+  AliAnalysisTaskCaloTrackCorrelation * task = new AliAnalysisTaskCaloTrackCorrelation (Form("PartCorr%s_Trig%s_Cl%s",kCalorimeter.Data(),kTrig.Data(),kClusterArray.Data()));
   task->SetConfigFileName(""); //Don't configure the analysis via configuration file.
   //task->SetDebugLevel(-1);
   task->SetBranches("ESD:AliESDRun.,AliESDHeader"); //just a trick to get Constantin's analysis to work
@@ -284,7 +286,7 @@ AliCaloTrackReader * ConfigureReader()
     
     // Centrality
     reader->SetCentralityClass("V0M");
-    reader->SetCentralityOpt("10");  // 10 centrality bins
+    reader->SetCentralityOpt(10);  // 10 (c= 0-10, 10-20 ...), 20  (c= 0-5, 5-10 ...) or 100 (c= 1, 2, 3 ..)
     reader->SetCentralityBin(-1,-1); // Accept all events, if not select range
     
     // Event plane (only used in AliAnaPi0 for the moment)
@@ -495,12 +497,15 @@ AliAnaPhoton* ConfigurePhotonAnalysis()
   //Set Histograms name tag, bins and ranges
   
   anaphoton->AddToHistogramsName("AnaPhoton_");
-  SetHistoRangeAndNBins(anaphoton); // see method below
+  SetHistoRangeAndNBins(anaphoton->GetHistogramRanges()); // see method below
   
   // Number of particle type MC histograms
   anaphoton->FillNOriginHistograms(8);
   anaphoton->FillNPrimaryHistograms(4);
   
+  if(kSimulation) anaphoton->SwitchOnDataMC() ;//Access MC stack and fill more histograms, AOD MC not implemented yet.
+  else            anaphoton->SwitchOffDataMC() ;
+
   if(kPrint) anaphoton->Print("");
   
   return anaphoton;
@@ -532,8 +537,11 @@ AliAnaChargedParticles* ConfigureChargedAnalysis()
   //Set Histograms name tag, bins and ranges
   
   anatrack->AddToHistogramsName("AnaHadrons_");
-  SetHistoRangeAndNBins(anatrack); // see method below
+  SetHistoRangeAndNBins(anatrack->GetHistogramRanges()); // see method below
 
+  if(kSimulation) anatrack->SwitchOnDataMC() ;//Access MC stack and fill more histograms, AOD MC not implemented yet.
+  else            anatrack->SwitchOffDataMC() ;
+  
   if(kPrint) anatrack->Print("");
   
   return anatrack;
@@ -586,8 +594,11 @@ AliAnaPi0* ConfigurePi0Analysis()
   //Set Histograms name tag, bins and ranges
   
   anapi0->AddToHistogramsName("AnaPi0_");
-  SetHistoRangeAndNBins(anapi0); // see method below
+  SetHistoRangeAndNBins(anapi0->GetHistogramRanges()); // see method below
   
+  if(kSimulation) anapi0->SwitchOnDataMC() ;//Access MC stack and fill more histograms, AOD MC not implemented yet.
+  else            anapi0->SwitchOffDataMC() ;
+
   return anapi0;
   
 }
@@ -635,7 +646,10 @@ AliAnaPi0EbE* ConfigurePi0EbEAnalysis(TString particle,
   //Set Histograms name tag, bins and ranges
   
   anapi0ebe->AddToHistogramsName(Form("Ana%s%sEbE_",particle.Data(),opt.Data()));
-  SetHistoRangeAndNBins(anapi0ebe); // see method below
+  SetHistoRangeAndNBins(anapi0ebe->GetHistogramRanges()); // see method below
+  
+  if(kSimulation) anapi0ebe->SwitchOnDataMC() ;//Access MC stack and fill more histograms, AOD MC not implemented yet.
+  else            anapi0ebe->SwitchOffDataMC() ;
   
   if(kPrint) anapi0ebe->Print("");
   
@@ -681,11 +695,14 @@ AliAnaParticleIsolation* ConfigureIsolationAnalysis(TString particle="Photon",
   //Set Histograms name tag, bins and ranges
   
   anaisol->AddToHistogramsName(Form("AnaIsol%s_",particle.Data()));
-  SetHistoRangeAndNBins(anaisol); // see method below
+  SetHistoRangeAndNBins(anaisol->GetHistogramRanges()); // see method below
   
   if(kPrint) ic     ->Print("");
   if(kPrint) anaisol->Print("");
   
+  if(kSimulation) anaisol->SwitchOnDataMC() ;//Access MC stack and fill more histograms, AOD MC not implemented yet.
+  else            anaisol->SwitchOffDataMC() ;
+  
   return anaisol;
   
 }
@@ -727,7 +744,10 @@ AliAnaParticleHadronCorrelation* ConfigureHadronCorrelationAnalysis(TString part
   //Set Histograms name tag, bins and ranges
   
   anacorrhadron->AddToHistogramsName(Form("Ana%sHadronCorr_Iso%d_",particle.Data(),bIsolated));
-  SetHistoRangeAndNBins(anacorrhadron); // see method below
+  SetHistoRangeAndNBins(anacorrhadron->GetHistogramRanges()); // see method below
+  
+  if(kSimulation) anacorrhadron->SwitchOnDataMC() ;//Access MC stack and fill more histograms, AOD MC not implemented yet.
+  else            anacorrhadron->SwitchOffDataMC() ;
   
   if(kPrint) anacorrhadron->Print("");  
   
@@ -768,8 +788,7 @@ AliAnaCalorimeterQA* ConfigureQAAnalysis()
   anaQA->SwitchOffFillAllTH3Histogram();
   anaQA->SwitchOffFillAllPositionHistogram();
   anaQA->SwitchOffFillAllPositionHistogram2();
-  
-  anaQA->SwitchOffStudyBadClusters() ; // On only for EMCAL
+  anaQA->SwitchOffStudyBadClusters();
   anaQA->SwitchOffStudyClustersAsymmetry();
   anaQA->SwitchOffStudyWeight();
   anaQA->SwitchOffFillAllTrackMatchingHistogram();
@@ -788,7 +807,10 @@ AliAnaCalorimeterQA* ConfigureQAAnalysis()
   }
   
   anaQA->AddToHistogramsName("QA_"); //Begining of histograms name
-  SetHistoRangeAndNBins(anaQA); // see method below
+  SetHistoRangeAndNBins(anaQA->GetHistogramRanges()); // see method below
+  
+  if(kSimulation) anaQA->SwitchOnDataMC() ;//Access MC stack and fill more histograms, AOD MC not implemented yet.
+  else            anaQA->SwitchOffDataMC() ;
   
   if(kPrint) anaQA->Print(""); 
   
@@ -797,13 +819,10 @@ AliAnaCalorimeterQA* ConfigureQAAnalysis()
 }
 
 //________________________________________________________
-void SetHistoRangeAndNBins (AliAnaPartCorrBaseClass* ana)
+void SetHistoRangeAndNBins (AliHistogramRanges* ana)
 {
   // Set common bins for all analysis and MC histograms filling
-  
-  if(kSimulation) ana->SwitchOnDataMC() ;//Access MC stack and fill more histograms, AOD MC not implemented yet.
-  else            ana->SwitchOffDataMC() ;
-  
+    
   ana->SetHistoPtRangeAndNBins(0, 100, 250) ; // Energy and pt histograms
   
   if(kCalorimeter=="EMCAL"){
@@ -826,6 +845,11 @@ void SetHistoRangeAndNBins (AliAnaPartCorrBaseClass* ana)
     
   }
   
+  if(kClusterArray==""  && kCalorimeter!="PHOS"){ // Tracks analysis
+    ana->SetHistoPhiRangeAndNBins(0, TMath::TwoPi(), 200) ;
+    ana->SetHistoEtaRangeAndNBins(-1.5, 1.5, 300) ;
+  }
+  
   ana->SetHistoShowerShapeRangeAndNBins(0, 3, 300);
   
   // Invariant mass analysis
similarity index 82%
rename from PWG4/macros/AddTaskPartCorrM.C
rename to PWG4/macros/AddTaskCaloTrackCorrM.C
index 99b74289c9a7865bafd05eb7e9264851bc755cdb..56dec433da921516b0c2d7bcf6612340d47311a4 100644 (file)
@@ -1,12 +1,12 @@
-AliAnalysisTaskParticleCorrelationM *AddTaskPartCorrM(TString data, TString calorimeter, Bool_t kPrintSettings = kFALSE)
+AliAnalysisTaskParticleCorrelationM *AddTaskCaloTrackCorrM(TString data, TString calorimeter, Bool_t kPrintSettings = kFALSE)
 {
-  // Creates a PartCorr task, configures it and adds it to the analysis manager.
+  // Creates a CaloTrackCorr task, configures it and adds it to the analysis manager.
   
   // Get the pointer to the existing analysis manager via the static access method.
   //==============================================================================
   AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
   if (!mgr) {
-    ::Error("AddTaskPartCorr", "No analysis manager to connect to.");
+    ::Error("AddTaskCaloTrackCorr", "No analysis manager to connect to.");
     return NULL;
   }  
   Bool_t kUseKinematics = kFALSE; 
@@ -102,28 +102,7 @@ AliAnalysisTaskParticleCorrelationM *AddTaskPartCorrM(TString data, TString calo
     
     cu->SetNumberOfCellsFromEMCALBorder(1) ; //nEMCAL);
     cu->SetNumberOfCellsFromPHOSBorder(2) ; //nPHOS);
-   // cu->SwitchOnNoFiducialBorderInEMCALEta0();
-    cu->SetPHOSChannelStatus(1,48, 8); //PHOS new hot channel
-    
-    // // Remove EMCAL hottest channels from Gustavo list
-    // SM0
-    cu->SetEMCALChannelStatus(0,3,13);  cu->SetEMCALChannelStatus(0,44,1); cu->SetEMCALChannelStatus(0,3,13); //warm
-    cu->SetEMCALChannelStatus(0,20,7);  cu->SetEMCALChannelStatus(0,38,2);   //hot
-    // SM1 warm channels
-    cu->SetEMCALChannelStatus(1,4,7);   cu->SetEMCALChannelStatus(1,4,13);  cu->SetEMCALChannelStatus(1,9,20); 
-    cu->SetEMCALChannelStatus(1,14,15); cu->SetEMCALChannelStatus(1,23,16); cu->SetEMCALChannelStatus(1,32,23);
-    cu->SetEMCALChannelStatus(1,37,5);  cu->SetEMCALChannelStatus(1,40,1);  cu->SetEMCALChannelStatus(1,40,2);
-    cu->SetEMCALChannelStatus(1,40,5);  cu->SetEMCALChannelStatus(1,41,0);  cu->SetEMCALChannelStatus(1,41,1);
-    cu->SetEMCALChannelStatus(1,41,2);  cu->SetEMCALChannelStatus(1,41,4);
-    // SM2
-    cu->SetEMCALChannelStatus(2,14,15); cu->SetEMCALChannelStatus(2,18,16); cu->SetEMCALChannelStatus(2,18,17); 
-    cu->SetEMCALChannelStatus(2,18,18); cu->SetEMCALChannelStatus(2,18,20); cu->SetEMCALChannelStatus(2,18,21); 
-    cu->SetEMCALChannelStatus(2,18,23); cu->SetEMCALChannelStatus(2,19,16); cu->SetEMCALChannelStatus(2,19,17); 
-    cu->SetEMCALChannelStatus(2,19,19); cu->SetEMCALChannelStatus(2,19,20); cu->SetEMCALChannelStatus(2,19,21); 
-    cu->SetEMCALChannelStatus(2,19,22);
-    //SM3
-    cu->SetEMCALChannelStatus(3,4,7);
-    
+     
     // -----------------------------------
     // --- Photon and Pi0  Analysis ---
     // -----------------------------------
@@ -166,9 +145,9 @@ AliAnalysisTaskParticleCorrelationM *AddTaskPartCorrM(TString data, TString calo
     else anaphoton->SetOutputAODName(Form("Triggers%s",calorimeter.Data()));
     anaphoton->AddToHistogramsName("AnaPhoton_");
     //Set Histograms bins and ranges
-    anaphoton->SetHistoPtRangeAndNBins(0, 50, 100) ;
-    //      ana->SetHistoPhiRangeAndNBins(0, TMath::TwoPi(), 100) ;
-    //      ana->SetHistoEtaRangeAndNBins(-0.7, 0.7, 100) ;
+    anaphoton->GetHistogramRanges()->SetHistoPtRangeAndNBins(0, 50, 100) ;
+    //      ana->GetHistogramRanges()->SetHistoPhiRangeAndNBins(0, TMath::TwoPi(), 100) ;
+    //      ana->GetHistogramRanges()->SetHistoEtaRangeAndNBins(-0.7, 0.7, 100) ;
     
     if(kPrintSettings) anaphoton->Print("");
     AliAnaPi0 *anapi0 = new AliAnaPi0();
@@ -192,11 +171,11 @@ AliAnalysisTaskParticleCorrelationM *AddTaskPartCorrM(TString data, TString calo
     anapi0->SwitchOffDataMC() ;//Access MC stack and fill more histograms
     if(calorimeter=="PHOS") anapi0->SetNumberOfModules(3); //PHOS first year
     else if(calorimeter=="EMCAL") anapi0->SetNumberOfModules(4); //EMCAL first year
-    anapi0->SetHistoPtRangeAndNBins(0, 50, 100) ;
-    //anapi0->SetHistoPhiRangeAndNBins(0, TMath::TwoPi(), 100) ;
-    //anapi0->SetHistoEtaRangeAndNBins(-0.8, 0.8, 200) ;
-    anapi0->SetHistoMassRangeAndNBins(0., 1.0, 100) ;
-    anapi0->SetHistoAsymmetryRangeAndNBins(0., 1. , 10) ;
+    anapi0->GetHistogramRanges()->SetHistoPtRangeAndNBins(0, 50, 100) ;
+    //anapi0->GetHistogramRanges()->SetHistoPhiRangeAndNBins(0, TMath::TwoPi(), 100) ;
+    //anapi0->GetHistogramRanges()->SetHistoEtaRangeAndNBins(-0.8, 0.8, 200) ;
+    anapi0->GetHistogramRanges()->SetHistoMassRangeAndNBins(0., 1.0, 100) ;
+    anapi0->GetHistogramRanges()->SetHistoAsymmetryRangeAndNBins(0., 1. , 10) ;
     if(kPrintSettings) anapi0->Print("");
     
     // -------------------------------------------------
@@ -210,8 +189,8 @@ AliAnalysisTaskParticleCorrelationM *AddTaskPartCorrM(TString data, TString calo
     //Set Histrograms bins and ranges
     nms->SetHistoERangeAndNBins(0, 50, 100) ;
     nms->SetHistoPtRangeAndNBins(0, 50, 100) ;
-    //      nms->SetHistoAngleRangeAndNBins(0, 0.3, 100) ;
-    //      nsm->SetHistoIMRangeAndNBins(0, 0.4, 100) ;  
+    //      nms->GetHistogramRanges()->SetHistoAngleRangeAndNBins(0, 0.3, 100) ;
+    //      nsm->GetHistogramRanges()->SetHistoIMRangeAndNBins(0, 0.4, 100) ;  
     
     AliAnaPi0EbE *anapi0ebe = new AliAnaPi0EbE();
     anapi0ebe->SetDebug(-1);//10 for lots of messages
@@ -232,9 +211,9 @@ AliAnalysisTaskParticleCorrelationM *AddTaskPartCorrM(TString data, TString calo
     anapi0ebe->SetMultiBin(1);  
     anapi0ebe->SetNeutralMesonSelection(nms);
     //Set Histrograms bins and ranges
-    anapi0ebe->SetHistoPtRangeAndNBins(0, 50, 100) ;
-    //      anapi0->SetHistoPhiRangeAndNBins(0, TMath::TwoPi(), 100) ;
-    //      anapi0->SetHistoEtaRangeAndNBins(-0.7, 0.7, 100) ;
+    anapi0ebe->GetHistogramRanges()->SetHistoPtRangeAndNBins(0, 50, 100) ;
+    //      anapi0->GetHistogramRanges()->SetHistoPhiRangeAndNBins(0, TMath::TwoPi(), 100) ;
+    //      anapi0->GetHistogramRanges()->SetHistoEtaRangeAndNBins(-0.7, 0.7, 100) ;
     if(kPrintSettings) anapi0ebe->Print("");
     
     // ### Pi0 Correlation with hadrons, not isolated
@@ -269,9 +248,9 @@ AliAnalysisTaskParticleCorrelationM *AddTaskPartCorrM(TString data, TString calo
     // anacorrhadronpi0->SwitchOnCaloPIDRecalculation(); //recommended for EMCAL
     //}
     //Set Histograms bins and ranges
-    anacorrhadronpi0->SetHistoPtRangeAndNBins(0, 50, 100) ;
-    //      ana->SetHistoPhiRangeAndNBins(0, TMath::TwoPi(), 100) ;
-    //      ana->SetHistoEtaRangeAndNBins(-0.7, 0.7, 100) ;
+    anacorrhadronpi0->GetHistogramRanges()->SetHistoPtRangeAndNBins(0, 50, 100) ;
+    //      ana->GetHistogramRanges()->SetHistoPhiRangeAndNBins(0, TMath::TwoPi(), 100) ;
+    //      ana->GetHistogramRanges()->SetHistoEtaRangeAndNBins(-0.7, 0.7, 100) ;
     if(kPrintSettings) anacorrhadronpi0->Print("");
     
     AliAnaParticleIsolation *anaisolpi0 = new AliAnaParticleIsolation();
@@ -293,9 +272,9 @@ AliAnalysisTaskParticleCorrelationM *AddTaskPartCorrM(TString data, TString calo
     //Multiple IC
     anaisolpi0->SwitchOffSeveralIsolation() ;
     //Set Histograms bins and ranges
-    anaisolpi0->SetHistoPtRangeAndNBins(0, 50, 100) ;
-    //      ana->SetHistoPhiRangeAndNBins(0, TMath::TwoPi(), 100) ;
-    //      ana->SetHistoEtaRangeAndNBins(-0.7, 0.7, 100) ;
+    anaisolpi0->GetHistogramRanges()->SetHistoPtRangeAndNBins(0, 50, 100) ;
+    //      ana->GetHistogramRanges()->SetHistoPhiRangeAndNBins(0, TMath::TwoPi(), 100) ;
+    //      ana->GetHistogramRanges()->SetHistoEtaRangeAndNBins(-0.7, 0.7, 100) ;
     if(kPrintSettings) anaisol->Print("");
     
     // ### Pi0 Correlation with hadrons, isolated
@@ -330,9 +309,9 @@ AliAnalysisTaskParticleCorrelationM *AddTaskPartCorrM(TString data, TString calo
     // anacorrhadronpi0->SwitchOnCaloPIDRecalculation(); //recommended for EMCAL
     //}
     //Set Histograms bins and ranges
-    anacorrhadronisopi0->SetHistoPtRangeAndNBins(0, 50, 100) ;
-    //      ana->SetHistoPhiRangeAndNBins(0, TMath::TwoPi(), 100) ;
-    //      ana->SetHistoEtaRangeAndNBins(-0.7, 0.7, 100) ;
+    anacorrhadronisopi0->GetHistogramRanges()->SetHistoPtRangeAndNBins(0, 50, 100) ;
+    //      ana->GetHistogramRanges()->SetHistoPhiRangeAndNBins(0, TMath::TwoPi(), 100) ;
+    //      ana->GetHistogramRanges()->SetHistoEtaRangeAndNBins(-0.7, 0.7, 100) ;
     if(kPrintSettings) anacorrhadronisopi0->Print("");
     
   } //analysis in calorimeter
@@ -359,9 +338,9 @@ AliAnalysisTaskParticleCorrelationM *AddTaskPartCorrM(TString data, TString calo
     else anacharge->SetOutputAODName(Form("Triggers%s",calorimeter.Data()));
     anacharge->AddToHistogramsName("AnaCharge_");
     //Set Histograms bins and ranges
-    anacharge->SetHistoPtRangeAndNBins(0, 50, 100) ;
-    //      ana->SetHistoPhiRangeAndNBins(0, TMath::TwoPi(), 100) ;
-    //      ana->SetHistoEtaRangeAndNBins(-0.7, 0.7, 100) ;
+    anacharge->GetHistogramRanges()->SetHistoPtRangeAndNBins(0, 50, 100) ;
+    //      ana->GetHistogramRanges()->SetHistoPhiRangeAndNBins(0, TMath::TwoPi(), 100) ;
+    //      ana->GetHistogramRanges()->SetHistoEtaRangeAndNBins(-0.7, 0.7, 100) ;
     
     if(kPrintSettings) anacharge->Print("");    
   }
@@ -400,9 +379,9 @@ AliAnalysisTaskParticleCorrelationM *AddTaskPartCorrM(TString data, TString calo
   //anacorrhadron->SwitchOnCaloPIDRecalculation(); //recommended for EMCAL
   //}
   //Set Histograms bins and ranges
-  anacorrhadron->SetHistoPtRangeAndNBins(0, 50, 100) ;
-  //      ana->SetHistoPhiRangeAndNBins(0, TMath::TwoPi(), 100) ;
-  //      ana->SetHistoEtaRangeAndNBins(-0.7, 0.7, 100) ;
+  anacorrhadron->GetHistogramRanges()->SetHistoPtRangeAndNBins(0, 50, 100) ;
+  //      ana->GetHistogramRanges()->SetHistoPhiRangeAndNBins(0, TMath::TwoPi(), 100) ;
+  //      ana->GetHistogramRanges()->SetHistoEtaRangeAndNBins(-0.7, 0.7, 100) ;
   if(kPrintSettings) anacorrhadron->Print("");
   
   
@@ -427,9 +406,9 @@ AliAnalysisTaskParticleCorrelationM *AddTaskPartCorrM(TString data, TString calo
   //Multiple IC
   anaisol->SwitchOffSeveralIsolation() ;
   //Set Histograms bins and ranges
-  anaisol->SetHistoPtRangeAndNBins(0, 50, 100) ;
-  //      ana->SetHistoPhiRangeAndNBins(0, TMath::TwoPi(), 100) ;
-  //      ana->SetHistoEtaRangeAndNBins(-0.7, 0.7, 100) ;
+  anaisol->GetHistogramRanges()->SetHistoPtRangeAndNBins(0, 50, 100) ;
+  //      ana->GetHistogramRanges()->SetHistoPhiRangeAndNBins(0, TMath::TwoPi(), 100) ;
+  //      ana->GetHistogramRanges()->SetHistoEtaRangeAndNBins(-0.7, 0.7, 100) ;
   
   if(kPrintSettings) anaisol->Print("");
   
@@ -467,13 +446,13 @@ AliAnalysisTaskParticleCorrelationM *AddTaskPartCorrM(TString data, TString calo
   //anacorrhadron->SwitchOnCaloPIDRecalculation(); //recommended for EMCAL
   //}
   //Set Histograms bins and ranges
-  anacorrisohadron->SetHistoPtRangeAndNBins(0, 50, 100) ;
-  //      ana->SetHistoPhiRangeAndNBins(0, TMath::TwoPi(), 100) ;
-  //      ana->SetHistoEtaRangeAndNBins(-0.7, 0.7, 100) ;
+  anacorrisohadron->GetHistogramRanges()->SetHistoPtRangeAndNBins(0, 50, 100) ;
+  //      ana->GetHistogramRanges()->SetHistoPhiRangeAndNBins(0, TMath::TwoPi(), 100) ;
+  //      ana->GetHistogramRanges()->SetHistoEtaRangeAndNBins(-0.7, 0.7, 100) ;
   if(kPrintSettings) anacorrisohadron->Print("");
   
   // #### Configure Maker ####
-  AliAnaPartCorrMaker * maker = new AliAnaPartCorrMaker();
+  AliAnaCaloTrackCorrMaker * maker = new AliAnaCaloTrackCorrMaker();
   maker->SetReader(reader);//pointer to reader
   Int_t n = 0;//Analysis number, order is important
   // Particle selection analysis
@@ -502,13 +481,13 @@ AliAnalysisTaskParticleCorrelationM *AddTaskPartCorrM(TString data, TString calo
   if(kPrintSettings) maker->Print("");
   
   printf("======================== \n");
-  printf(" End Configuration of PartCorr analysis with detector %s \n",calorimeter.Data());
+  printf(" End Configuration of CaloTrackCorr analysis with detector %s \n",calorimeter.Data());
   printf("======================== \n");
   
   // Create task
   //===========================================================================
- // AliAnalysisTaskParticleCorrelationM * task = new AliAnalysisTaskParticleCorrelationM(Form("PartCorr%s",calorimeter.Data()));
-  AliAnalysisTaskParticleCorrelationM * task = new AliAnalysisTaskParticleCorrelationM("PartCorr");
+ // AliAnalysisTaskParticleCorrelationM * task = new AliAnalysisTaskParticleCorrelationM(Form("CaloTrackCorr%s",calorimeter.Data()));
+  AliAnalysisTaskParticleCorrelationM * task = new AliAnalysisTaskParticleCorrelationM("CaloTrackCorr");
   task->SetConfigFileName(""); //Don't configure the analysis via configuration file.
   //task->SetDebugLevel(-1);
   task->SetAnalysisMaker(maker);
@@ -516,22 +495,22 @@ AliAnalysisTaskParticleCorrelationM *AddTaskPartCorrM(TString data, TString calo
   mgr->AddTask(task);
   
 //  char name[128];
-//  sprintf(name,"PartCorr_%s",calorimeter.Data());
+//  sprintf(name,"CaloTrackCorr_%s",calorimeter.Data());
 //  cout<<"Name of task "<<name<<endl;
   //AliAnalysisDataContainer *cout_pc = mgr->CreateContainer(Form(name),TList::Class(),
-  //                                      AliAnalysisManager::kOutputContainer, Form("PartCorr_%s.root",calorimeter.Data()));
+  //                                      AliAnalysisManager::kOutputContainer, Form("CaloTrackCorr_%s.root",calorimeter.Data()));
   
   TString outputfile = AliAnalysisManager::GetCommonFileName(); 
   outputfile.ReplaceAll(".root","") ;
   outputfile.Append("M.root") ;  
-  //  AliAnalysisDataContainer *cout_pc = mgr->CreateContainer(Form("PartCorr_%s",calorimeter.Data()),  TList::Class(), AliAnalysisManager::kOutputContainer, Form("%s:PartCorr_%s",outputfile.Data(),calorimeter.Data()));
+  //  AliAnalysisDataContainer *cout_pc = mgr->CreateContainer(Form("CaloTrackCorr_%s",calorimeter.Data()),  TList::Class(), AliAnalysisManager::kOutputContainer, Form("%s:CaloTrackCorr_%s",outputfile.Data(),calorimeter.Data()));
   AliAnalysisDataContainer *cout_pc   = mgr->CreateContainer(calorimeter.Data(), TList::Class(),
                                                              AliAnalysisManager::kOutputContainer,
-                                                             Form("%s:PartCorr",outputfile.Data()));
+                                                             Form("%s:CaloTrackCorr",outputfile.Data()));
   
   AliAnalysisDataContainer *cout_cuts = mgr->CreateContainer(Form("%sCuts",calorimeter.Data()), TList::Class(),
                                                              AliAnalysisManager::kParamContainer,
-                                                             Form("%s:PartCorrCuts",outputfile.Data()));
+                                                             Form("%s:CaloTrackCorrCuts",outputfile.Data()));
   // Create ONLY the output containers for the data produced by the task.
   // Get and connect other common input/output containers via the manager as below
   //==============================================================================
index 517e700ba16dec07cca52e5ae119ca79603cbd87..db54c49c713b2ac494aabf3517b6067b6abe2363 100644 (file)
@@ -1,7 +1,7 @@
 /* $Id:  $ */
 //--------------------------------------------------
 // Example macro to do analysis with the 
-// analysis classes in PWG4PartCorr
+// analysis classes in CaloTrackCorrelations
 // Can be executed with Root and AliRoot
 //
 // Pay attention to the options and definitions
@@ -147,6 +147,7 @@ void ana(Int_t mode=mGRID)
     }
   }
   
+  
   // AOD output handler
   if(kInputData!="deltaAOD" && outAOD)
   {
@@ -172,10 +173,10 @@ void ana(Int_t mode=mGRID)
     // AOD handler
     AliAODInputHandler *aodHandler = new AliAODInputHandler();
     mgr->SetInputEventHandler(aodHandler);
-    if(kInputData == "deltaAOD") aodHandler->AddFriend("deltaAODPartCorr.root");
+    if(kInputData == "deltaAOD") aodHandler->AddFriend("deltaAODCaloTrackCorr.root");
     cout<<"AOD handler "<<mgr->GetInputEventHandler()<<endl;
   }
-  //mgr->RegisterExternalFile("deltaAODPartCorr.root");
+  //mgr->RegisterExternalFile("deltaAODCaloTrackCorr.root");
   //mgr->SetDebugLevel(1); // For debugging, do not uncomment if you want no messages.
   
   TString outputFile = AliAnalysisManager::GetCommonFileName(); 
@@ -193,37 +194,58 @@ void ana(Int_t mode=mGRID)
   {
     gROOT->LoadMacro("$ALICE_ROOT/ANALYSIS/macros/AddTaskCentrality.C");
     AliCentralitySelectionTask *taskCentrality = AddTaskCentrality();
-    taskCentrality->SetPass(2); // remember to set the pass you are processing!!!
   }
   
   // Simple event counting tasks
   AddTaskCounter("");   // All
-  AddTaskCounter("MB"); // Min Bias
+  //AddTaskCounter("MB"); // Min Bias
   if(!kMC)
   {
     AddTaskCounter("INT7"); // Min Bias
-    AddTaskCounter("EMC1"); // Trig Th > 1.5 GeV approx
+    //AddTaskCounter("EMC1"); // Trig Th > 1.5 GeV approx
     AddTaskCounter("EMC7"); // Trig Th > 4-5 GeV 
     AddTaskCounter("PHOS"); //  
   }
+    
+  // -----------------
+  // Photon conversion
+  // ----------------- 
+/*  
+  if(kInputData=="ESD"){
+    printf("* Configure photon conversion analysis in macro \n");
+    TString arguments = "-run-on-train -use-own-xyz  -force-aod -mc-off ";
+    gROOT->LoadMacro("$ALICE_ROOT/PWG4/macros/ConfigGammaConversion.C");
+    AliAnalysisTaskGammaConversion * taskGammaConversion = 
+    ConfigGammaConversion(arguments,mgr->GetCommonInputContainer());
+    taskGammaConversion->SelectCollisionCandidates();
+    
+    // Gamma Conversion AOD to AODPWG4Particle
+    AliAnalysisTaskGCPartToPWG4Part * taskGCToPC = new AliAnalysisTaskGCPartToPWG4Part("GCPartToPWG4Part");
+    taskGCToPC->SetGammaCutId("90035620401003321022000000090");
+    mgr->AddTask(taskGCToPC);
+    mgr->ConnectInput  (taskGCToPC, 0, mgr->GetCommonInputContainer() );
+    mgr->ConnectOutput (taskGCToPC, 0, mgr->GetCommonOutputContainer()); 
+  }
+*/  
   
   Bool_t kPrint   = kFALSE;
   Bool_t deltaAOD = kFALSE;
+  gROOT->LoadMacro("AddTaskCaloTrackCorr.C");   // $ALICE_ROOT/PWG4/macros
+  gROOT->LoadMacro("AddTaskEMCALClusterize.C"); // $ALICE_ROOT/PWG4/CaloCalib/macros  
   
-  gROOT->LoadMacro("AddTaskPartCorr.C");        // $ALICE_ROOT/PWG4/macros
-  gROOT->LoadMacro("AddTaskEMCALClusterize.C"); // $ALICE_ROOT/PWG4/CaloCalib/macros
   
   // ------
   // Tracks
   // ------  
-  
+
   // Track isolation-correlation analysis and EMCAL QA analysis
-  AliAnalysisTaskParticleCorrelation *anamb  = AddTaskPartCorr(kInputData, "EMCAL",   kPrint,kMC, deltaAOD,  outputFile.Data(), 
+  AliAnalysisTaskCaloTrackCorrelation *anamb  = AddTaskCaloTrackCorr(kInputData, "EMCAL",   kPrint,kMC, deltaAOD,  outputFile.Data(), 
                                                                kYear,kRun,kCollision,"INT7","");   // PHOS trigger
   
-  AliAnalysisTaskParticleCorrelation *anatr  = AddTaskPartCorr(kInputData, "EMCAL",   kPrint,kMC, deltaAOD,  outputFile.Data(), 
+  AliAnalysisTaskCaloTrackCorrelation *anatr  = AddTaskCaloTrackCorr(kInputData, "EMCAL",   kPrint,kMC, deltaAOD,  outputFile.Data(), 
                                                                kYear,kRun,kCollision,"EMC7","");  
   
   // -----
   // EMCAL
   // -----  
@@ -245,20 +267,21 @@ void ana(Int_t mode=mGRID)
   if(!kMC)
   {
     
-    AliAnalysisTaskParticleCorrelation *anav1tr  = AddTaskPartCorr(kInputData, "EMCAL",   kPrint,kMC, deltaAOD,  outputFile.Data(), 
+    AliAnalysisTaskCaloTrackCorrelation *anav1tr  = AddTaskCaloTrackCorr(kInputData, "EMCAL",   kPrint,kMC, deltaAOD,  outputFile.Data(), 
                                                                    kYear,kRun,kCollision,"EMC7",arrayNameV1);
     
-    AliAnalysisTaskParticleCorrelation *anav1mb  = AddTaskPartCorr(kInputData, "EMCAL",   kPrint,kMC, deltaAOD,  outputFile.Data(), 
+    AliAnalysisTaskCaloTrackCorrelation *anav1mb  = AddTaskCaloTrackCorr(kInputData, "EMCAL",   kPrint,kMC, deltaAOD,  outputFile.Data(), 
                                                                    kYear,kRun,kCollision,"INT7",arrayNameV1);
   }
   else 
   {// No trigger (should be MB, but for single particle productions it does not work)
     
-    AliAnalysisTaskParticleCorrelation *anav1  = AddTaskPartCorr(kInputData, "EMCAL",   kPrint,kMC, deltaAOD,  outputFile.Data(), 
+    AliAnalysisTaskCaloTrackCorrelation *anav1  = AddTaskCaloTrackCorr(kInputData, "EMCAL",   kPrint,kMC, deltaAOD,  outputFile.Data(), 
                                                                  kYear,kRun,kCollision,"",arrayNameV1);
   }
   
   
+  
   //Analysis with clusterizer V2
   AliAnalysisTaskEMCALClusterize * clv2 = AddTaskEMCALClusterize(kMC,"V2",clTrigger,kRun,kPass, bTrackMatch,
                                                                  minEcell,minEseed,dTime,wTime);    
@@ -269,18 +292,19 @@ void ana(Int_t mode=mGRID)
   if(!kMC)
   {
     
-    AliAnalysisTaskParticleCorrelation *anav2tr  = AddTaskPartCorr(kInputData, "EMCAL",   kPrint,kMC, deltaAOD,  outputFile.Data(), 
+    AliAnalysisTaskCaloTrackCorrelation *anav2tr  = AddTaskCaloTrackCorr(kInputData, "EMCAL",   kPrint,kMC, deltaAOD,  outputFile.Data(), 
                                                                    kYear,kRun,kCollision,"EMC7",arrayNameV2);
     
-    AliAnalysisTaskParticleCorrelation *anav2mb  = AddTaskPartCorr(kInputData, "EMCAL",   kPrint,kMC, deltaAOD,  outputFile.Data(), 
+    AliAnalysisTaskCaloTrackCorrelation *anav2mb  = AddTaskCaloTrackCorr(kInputData, "EMCAL",   kPrint,kMC, deltaAOD,  outputFile.Data(), 
                                                                    kYear,kRun,kCollision,"INT7",arrayNameV2);
   }
   else 
   {// No trigger (should be MB, but for single particle productions it does not work)
-    AliAnalysisTaskParticleCorrelation *anav2  = AddTaskPartCorr(kInputData, "EMCAL",   kPrint,kMC, deltaAOD,  outputFile.Data(), 
+    AliAnalysisTaskCaloTrackCorrelation *anav2  = AddTaskCaloTrackCorr(kInputData, "EMCAL",   kPrint,kMC, deltaAOD,  outputFile.Data(), 
                                                                  kYear,kRun,kCollision,"",arrayNameV2);    
   }
-  
+  /*
   // -----
   // PHOS
   // -----
@@ -290,22 +314,22 @@ void ana(Int_t mode=mGRID)
   if(!kMC)
   {
     
-    AliAnalysisTaskParticleCorrelation *anav1tr = AddTaskPartCorr(kInputData, "PHOS", kPrint,kMC, deltaAOD,  outputFile.Data(), 
+    AliAnalysisTaskCaloTrackCorrelation *anav1tr = AddTaskCaloTrackCorr(kInputData, "PHOS", kPrint,kMC, deltaAOD,  outputFile.Data(), 
                                                                   kYear,kRun,kCollision,"PHOS",""); // PHOS trigger
     
-    
-    AliAnalysisTaskParticleCorrelation *anav1mb = AddTaskPartCorr(kInputData, "PHOS",   kPrint,kMC, deltaAOD,  outputFile.Data(), 
+    AliAnalysisTaskCaloTrackCorrelation *anav1mb = AddTaskCaloTrackCorr(kInputData, "PHOS",   kPrint,kMC, deltaAOD,  outputFile.Data(), 
                                                                   kYear,kRun,kCollision,"INT7","");
     
   }
   else 
   {// No trigger
     
-    AliAnalysisTaskParticleCorrelation *anav1mb = AddTaskPartCorr(kInputData, "PHOS",   kPrint,kMC, deltaAOD,  outputFile.Data(), 
+    AliAnalysisTaskCaloTrackCorrelation *anav1mb = AddTaskCaloTrackCorr(kInputData, "PHOS",   kPrint,kMC, deltaAOD,  outputFile.Data(), 
                                                                   kYear,kRun,kCollision,"","");
     
   }
-  
+
+  */
   //-----------------------
   // Run the analysis
   //-----------------------    
@@ -415,6 +439,10 @@ void  LoadLibraries(Int_t mode)
   //gSystem->Load("libJETAN");
   //gSystem->Load("FASTJETAN");
   //gSystem->Load("PWG4JetTasks");
+
+  gSystem->Load("libCORRFW.so");
+  gSystem->Load("libPWG4GammaConv.so"); 
+  //SetupPar("PWG4GammaConv"); 
   
   // needed for plugin?
   gSystem->AddIncludePath("-I$ALICE_ROOT");
index d2f626f2d12739b875b37b1bedc7d4e939b7a0ca..2d4f6850b931fc799c03a1dbc95b1584b9abbe57 100644 (file)
@@ -108,18 +108,18 @@ void anaM()
     //-------------------------------------------------------------------------
     
     //correlation analysis
-    gROOT->LoadMacro("AddTaskPartCorrM.C");
+    gROOT->LoadMacro("AddTaskCaloTrackCorrM.C");
     
-    AliAnalysisTaskParticleCorrelationM *taskEMCAL = AddTaskPartCorrM(kInputData,"EMCAL",kFALSE);
+    AliAnalysisTaskParticleCorrelationM *taskEMCAL = AddTaskCaloTrackCorrM(kInputData,"EMCAL",kFALSE);
 
     mgr->AddTask(taskEMCAL);
     
-    AliAnalysisTaskParticleCorrelationM *taskPHOS  = AddTaskPartCorrM(kInputData,"PHOS", kFALSE);
+    AliAnalysisTaskParticleCorrelationM *taskPHOS  = AddTaskCaloTrackCorrM(kInputData,"PHOS", kFALSE);
 
     mgr->AddTask(taskPHOS);
     
     //gROOT->LoadMacro("AddTaskChargeCorr.C");
-    AliAnalysisTaskParticleCorrelationM *taskCharge  = AddTaskPartCorrM(kInputData, "CTS",kFALSE);
+    AliAnalysisTaskParticleCorrelationM *taskCharge  = AddTaskCaloTrackCorrM(kInputData, "CTS",kFALSE);
 //    if(!kMC)
 //      taskCharge->SelectCollisionCandidates();
     mgr->AddTask(taskCharge);
@@ -158,8 +158,8 @@ void  LoadLibraries() {
     SetupPar("PHOSUtils");
     SetupPar("EMCALUtils");
     
-    SetupPar("PWG4PartCorrBase");
-    SetupPar("PWG4PartCorrDep");
+    SetupPar("PWG4CaloTrackCorrBase");
+    SetupPar("PWG4CaloTrackCorrDep");
   }
   else{
     //--------------------------------------------------------
@@ -173,8 +173,8 @@ void  LoadLibraries() {
     gSystem->Load("libANALYSISalice");
          gSystem->Load("libPHOSUtils");
          gSystem->Load("libEMCALUtils");
-    gSystem->Load("libPWG4PartCorrBase");
-    gSystem->Load("libPWG4PartCorrDep");
+    gSystem->Load("libPWG4CaloTrackCorrBase");
+    gSystem->Load("libPWG4CaloTrackCorrDep");
   }
   
 }