From 08a064bcc9b5b44473f8641f7b4e48346f9e063f Mon Sep 17 00:00:00 2001 From: gconesab Date: Thu, 12 Nov 2009 12:38:27 +0000 Subject: [PATCH] Correct the way the standard AOD are cleaned, when used as temporary containers. Now not done by default, only cleaned when requested, done in example config. Option to copy Std AOD in output only in case of AODReader --- PWG4/PartCorrBase/AliCaloTrackAODReader.cxx | 17 +++++++++++++++-- PWG4/PartCorrBase/AliCaloTrackAODReader.h | 9 ++++++++- PWG4/PartCorrBase/AliCaloTrackReader.cxx | 12 ++++++------ PWG4/PartCorrBase/AliCaloTrackReader.h | 10 +++++----- PWG4/macros/AddTaskCalorimeterQA.C | 5 ++++- PWG4/macros/AddTaskPartCorr.C | 3 --- PWG4/macros/ConfigAnalysisCalorimeterQA.C | 2 +- PWG4/macros/ConfigAnalysisChargedParticles.C | 2 +- PWG4/macros/ConfigAnalysisESDExample.C | 2 +- PWG4/macros/ConfigAnalysisGammaDirect.C | 2 +- .../ConfigAnalysisGammaHadronCorrelation.C | 2 +- .../ConfigAnalysisGammaJetLCCorrelation.C | 2 +- PWG4/macros/ConfigAnalysisMCExample.C | 2 +- PWG4/macros/ConfigAnalysisOmegaToPi0Gamma.C | 2 +- PWG4/macros/ConfigAnalysisPhotonESD.C | 1 + PWG4/macros/ConfigAnalysisPhotonMC.C | 2 +- PWG4/macros/ConfigAnalysisPi0.C | 2 +- PWG4/macros/ConfigAnalysisPi0EbE.C | 2 +- PWG4/macros/ConfigAnalysisPi0EbEIsolated.C | 2 +- 19 files changed, 51 insertions(+), 30 deletions(-) diff --git a/PWG4/PartCorrBase/AliCaloTrackAODReader.cxx b/PWG4/PartCorrBase/AliCaloTrackAODReader.cxx index 07c3d7a92d3..5b79dbcb538 100755 --- a/PWG4/PartCorrBase/AliCaloTrackAODReader.cxx +++ b/PWG4/PartCorrBase/AliCaloTrackAODReader.cxx @@ -43,7 +43,7 @@ ClassImp(AliCaloTrackAODReader) //____________________________________________________________________________ AliCaloTrackAODReader::AliCaloTrackAODReader() : - AliCaloTrackReader() + AliCaloTrackReader(), fWriteOutputStdAOD(kFALSE) { //Default Ctor @@ -59,7 +59,7 @@ AliCaloTrackAODReader::AliCaloTrackAODReader() : //____________________________________________________________________________ AliCaloTrackAODReader::AliCaloTrackAODReader(const AliCaloTrackAODReader & aodr) : - AliCaloTrackReader(aodr) + AliCaloTrackReader(aodr), fWriteOutputStdAOD(aodr.fWriteOutputStdAOD) { // cpy ctor } @@ -345,3 +345,16 @@ void AliCaloTrackAODReader::SetInputOutputMCEvent(AliVEvent* input, AliAODEvent* SetMC(mc); } + +//________________________________________________________________ +void AliCaloTrackAODReader::Print(const Option_t * opt) const +{ + + //Print some relevant parameters set for the analysis + AliCaloTrackReader::Print(opt); + + printf("Write std AOD = %d\n", fWriteOutputStdAOD) ; + + printf(" \n") ; +} + diff --git a/PWG4/PartCorrBase/AliCaloTrackAODReader.h b/PWG4/PartCorrBase/AliCaloTrackAODReader.h index d59c628be72..e3a39320e50 100755 --- a/PWG4/PartCorrBase/AliCaloTrackAODReader.h +++ b/PWG4/PartCorrBase/AliCaloTrackAODReader.h @@ -39,8 +39,15 @@ public: void GetVertex(Double_t v[3]) const ; void SetInputOutputMCEvent(AliVEvent* esd, AliAODEvent* aod, AliMCEvent* mc) ; + void SwitchOnWriteStdAOD() {fWriteOutputStdAOD = kTRUE;} + void SwitchOffWriteStdAOD() {fWriteOutputStdAOD = kFALSE;} + + void Print(const Option_t * opt) const; - ClassDef(AliCaloTrackAODReader,3) +private: + Bool_t fWriteOutputStdAOD; // Write selected standard tracks and caloclusters in output AOD + + ClassDef(AliCaloTrackAODReader,4) } ; #endif //ALICALOTRACKAODREADER_H diff --git a/PWG4/PartCorrBase/AliCaloTrackReader.cxx b/PWG4/PartCorrBase/AliCaloTrackReader.cxx index 9ac14953227..67e894e72ea 100755 --- a/PWG4/PartCorrBase/AliCaloTrackReader.cxx +++ b/PWG4/PartCorrBase/AliCaloTrackReader.cxx @@ -55,7 +55,7 @@ ClassImp(AliCaloTrackReader) fAODCTSNormalInputEntries(0), fAODEMCALNormalInputEntries(0), fAODPHOSNormalInputEntries(0), fTrackStatus(0), fReadStack(kFALSE), fReadAODMCParticles(kFALSE), - fWriteOutputStdAOD(kFALSE), fDeltaAODFileName("deltaAODPartCorr.root") + fCleanOutputStdAOD(kFALSE), fDeltaAODFileName("deltaAODPartCorr.root") { //Ctor @@ -88,7 +88,7 @@ AliCaloTrackReader::AliCaloTrackReader(const AliCaloTrackReader & g) : fAODPHOSNormalInputEntries(g.fAODPHOSNormalInputEntries), fTrackStatus(g.fTrackStatus), fReadStack(g.fReadStack), fReadAODMCParticles(g.fReadAODMCParticles), - fWriteOutputStdAOD(g.fWriteOutputStdAOD), fDeltaAODFileName(g.fDeltaAODFileName) + fCleanOutputStdAOD(g.fCleanOutputStdAOD), fDeltaAODFileName(g.fDeltaAODFileName) { // cpy ctor @@ -143,7 +143,7 @@ AliCaloTrackReader & AliCaloTrackReader::operator = (const AliCaloTrackReader & fReadStack = source.fReadStack; fReadAODMCParticles = source.fReadAODMCParticles; - fWriteOutputStdAOD = source.fWriteOutputStdAOD; + fCleanOutputStdAOD = source.fCleanOutputStdAOD; fDeltaAODFileName = source.fDeltaAODFileName; return *this; @@ -355,7 +355,7 @@ void AliCaloTrackReader::InitParameters() fSecondInputFirstEvent = 0 ; fReadStack = kFALSE; // Check in the constructor of the other readers if it was set or in the configuration file fReadAODMCParticles = kFALSE; // Check in the constructor of the other readers if it was set or in the configuration file - fWriteOutputStdAOD = kTRUE; // Leave it kTRUE in case we run different tasks at the same time after the filter, when running alone better switch it off. + fCleanOutputStdAOD = kFALSE; // Clean the standard clusters/tracks? fDeltaAODFileName = "deltaAODPartCorr.root"; } @@ -388,7 +388,7 @@ void AliCaloTrackReader::Print(const Option_t * opt) const } printf("Read Kine from, stack? %d, AOD ? %d \n", fReadStack, fReadAODMCParticles) ; - printf("Write in std AOD = %d\n", fWriteOutputStdAOD) ; + printf("Clean std AOD = %d\n", fCleanOutputStdAOD) ; printf("Delta AOD File Name = %s\n", fDeltaAODFileName.Data()) ; printf(" \n") ; @@ -449,7 +449,7 @@ void AliCaloTrackReader::ResetLists() { if(fAODPHOS) fAODPHOS -> Clear(); if(fEMCALCells) fEMCALCells -> Clear(); if(fPHOSCells) fPHOSCells -> Clear(); - if(!fWriteOutputStdAOD){ + if(fCleanOutputStdAOD){ //Only keep copied tracks and clusters if requested fOutputEvent->GetTracks() ->Clear(); fOutputEvent->GetCaloClusters()->Clear(); diff --git a/PWG4/PartCorrBase/AliCaloTrackReader.h b/PWG4/PartCorrBase/AliCaloTrackReader.h index bc452530cf8..d90c92b931e 100755 --- a/PWG4/PartCorrBase/AliCaloTrackReader.h +++ b/PWG4/PartCorrBase/AliCaloTrackReader.h @@ -165,9 +165,9 @@ class AliCaloTrackReader : public TObject { Bool_t ReadStack() const { return fReadStack ; } Bool_t ReadAODMCParticles() const { return fReadAODMCParticles ; } - void SwitchOnWriteStdAOD() {fWriteOutputStdAOD = kTRUE;} - void SwitchOffWriteStdAOD() {fWriteOutputStdAOD = kFALSE;} - + void SwitchOnCleanStdAOD() {fCleanOutputStdAOD = kTRUE;} + void SwitchOffCleanStdAOD() {fCleanOutputStdAOD = kFALSE;} + void SetDeltaAODFileName(TString name ) {fDeltaAODFileName = name ; } TString GetDeltaAODFileName() const {return fDeltaAODFileName ; } @@ -214,10 +214,10 @@ class AliCaloTrackReader : public TObject { Bool_t fReadStack ; // Access kine information from stack Bool_t fReadAODMCParticles ; // Access kine information from filtered AOD MC particles - Bool_t fWriteOutputStdAOD; // Write selected standard tracks and caloclusters in output AOD + Bool_t fCleanOutputStdAOD; // clean the written standard tracks and caloclusters in output AOD TString fDeltaAODFileName ; // Delta AOD file name - ClassDef(AliCaloTrackReader,7) + ClassDef(AliCaloTrackReader,8) } ; diff --git a/PWG4/macros/AddTaskCalorimeterQA.C b/PWG4/macros/AddTaskCalorimeterQA.C index 5df929e268c..42af4390092 100644 --- a/PWG4/macros/AddTaskCalorimeterQA.C +++ b/PWG4/macros/AddTaskCalorimeterQA.C @@ -45,7 +45,10 @@ AliAnalysisTaskParticleCorrelation *AddTaskCalorimeterQA(TString data, Bool_t kU } } reader->SetDeltaAODFileName(""); //Do not create deltaAOD file, this analysis do not create branches. - + + //Do not keep the temporal AOD in file. + //reader->SwitchOnCleanStdAOD(); + // ##### Analysis algorithm settings #### AliFidutialCut * fidCut = new AliFidutialCut(); diff --git a/PWG4/macros/AddTaskPartCorr.C b/PWG4/macros/AddTaskPartCorr.C index c5b07cb9b58..688c28dd222 100644 --- a/PWG4/macros/AddTaskPartCorr.C +++ b/PWG4/macros/AddTaskPartCorr.C @@ -49,9 +49,6 @@ AliAnalysisTaskParticleCorrelation *AddTaskPartCorr(TString data, TString calori reader->SetCTSPtMin(0.2); if(kPrintSettings) reader->Print(""); - //Needed line, do not clear standard output AODs, we are not writing there - reader->SwitchOnWriteStdAOD(); - // ##### Analysis algorithm settings #### // -------------------- diff --git a/PWG4/macros/ConfigAnalysisCalorimeterQA.C b/PWG4/macros/ConfigAnalysisCalorimeterQA.C index 0bc74e8dea9..b229f36114a 100644 --- a/PWG4/macros/ConfigAnalysisCalorimeterQA.C +++ b/PWG4/macros/ConfigAnalysisCalorimeterQA.C @@ -47,7 +47,7 @@ AliAnaPartCorrMaker* ConfigAnalysis() // reader->SetTrackStatus(status); //Remove the temporal AODs we create. - reader->SwitchOffWriteStdAOD(); + reader->SwitchOnCleanStdAOD(); reader->Print(""); diff --git a/PWG4/macros/ConfigAnalysisChargedParticles.C b/PWG4/macros/ConfigAnalysisChargedParticles.C index 722d1981954..b31c13a2c81 100644 --- a/PWG4/macros/ConfigAnalysisChargedParticles.C +++ b/PWG4/macros/ConfigAnalysisChargedParticles.C @@ -62,7 +62,7 @@ AliAnaPartCorrMaker* ConfigAnalysis() // reader->SetTrackStatus(status); //Remove the temporal AODs we create. - reader->SwitchOffWriteStdAOD(); + reader->SwitchOnCleanStdAOD(); reader->Print(""); diff --git a/PWG4/macros/ConfigAnalysisESDExample.C b/PWG4/macros/ConfigAnalysisESDExample.C index 25a50ca6008..235604d3b6b 100644 --- a/PWG4/macros/ConfigAnalysisESDExample.C +++ b/PWG4/macros/ConfigAnalysisESDExample.C @@ -66,7 +66,7 @@ AliAnaPartCorrMaker* ConfigAnalysis() reader->SetCTSPtMin(.2); //Remove the temporal AODs we create. - reader->SwitchOffWriteStdAOD(); + reader->SwitchOnCleanStdAOD(); reader->SetFidutialCut(fidCut); diff --git a/PWG4/macros/ConfigAnalysisGammaDirect.C b/PWG4/macros/ConfigAnalysisGammaDirect.C index 86984aed2fd..c2ec01e542d 100644 --- a/PWG4/macros/ConfigAnalysisGammaDirect.C +++ b/PWG4/macros/ConfigAnalysisGammaDirect.C @@ -64,7 +64,7 @@ AliAnaPartCorrMaker* ConfigAnalysis() // reader->SetTrackStatus(status); //Remove the temporal AODs we create. - reader->SwitchOffWriteStdAOD(); + reader->SwitchOnCleanStdAOD(); reader->Print(""); diff --git a/PWG4/macros/ConfigAnalysisGammaHadronCorrelation.C b/PWG4/macros/ConfigAnalysisGammaHadronCorrelation.C index d0ca4e66087..db6835f5a5b 100644 --- a/PWG4/macros/ConfigAnalysisGammaHadronCorrelation.C +++ b/PWG4/macros/ConfigAnalysisGammaHadronCorrelation.C @@ -66,7 +66,7 @@ AliAnaPartCorrMaker* ConfigAnalysis() // reader->SetTrackStatus(status); //Remove the temporal AODs we create. - reader->SwitchOffWriteStdAOD(); + reader->SwitchOnCleanStdAOD(); reader->Print(""); diff --git a/PWG4/macros/ConfigAnalysisGammaJetLCCorrelation.C b/PWG4/macros/ConfigAnalysisGammaJetLCCorrelation.C index 8fa97f93896..6580035e99a 100644 --- a/PWG4/macros/ConfigAnalysisGammaJetLCCorrelation.C +++ b/PWG4/macros/ConfigAnalysisGammaJetLCCorrelation.C @@ -62,7 +62,7 @@ AliAnaPartCorrMaker* ConfigAnalysis() // reader->SetTrackStatus(status); //Remove the temporal AODs we create. - reader->SwitchOffWriteStdAOD(); + reader->SwitchOnCleanStdAOD(); reader->Print(""); diff --git a/PWG4/macros/ConfigAnalysisMCExample.C b/PWG4/macros/ConfigAnalysisMCExample.C index c5eb14986a7..54ca0c0a810 100644 --- a/PWG4/macros/ConfigAnalysisMCExample.C +++ b/PWG4/macros/ConfigAnalysisMCExample.C @@ -68,7 +68,7 @@ AliAnaPartCorrMaker* ConfigAnalysis() reader->SetFidutialCut(fidCut); //Remove the temporal AODs we create. - reader->SwitchOffWriteStdAOD(); + reader->SwitchOnCleanStdAOD(); reader->Print(""); diff --git a/PWG4/macros/ConfigAnalysisOmegaToPi0Gamma.C b/PWG4/macros/ConfigAnalysisOmegaToPi0Gamma.C index 54ac582ead7..08e19e03e6d 100644 --- a/PWG4/macros/ConfigAnalysisOmegaToPi0Gamma.C +++ b/PWG4/macros/ConfigAnalysisOmegaToPi0Gamma.C @@ -39,7 +39,7 @@ AliAnaPartCorrMaker* ConfigAnalysis() reader->SetFidutialCut(fidCut); //Remove the temporal AODs we create. - reader->SwitchOffWriteStdAOD(); + reader->SwitchOnCleanStdAOD(); reader->Print(""); diff --git a/PWG4/macros/ConfigAnalysisPhotonESD.C b/PWG4/macros/ConfigAnalysisPhotonESD.C index 24f65c2e24e..4e054a2f0f4 100644 --- a/PWG4/macros/ConfigAnalysisPhotonESD.C +++ b/PWG4/macros/ConfigAnalysisPhotonESD.C @@ -68,6 +68,7 @@ AliAnaPartCorrMaker* ConfigAnalysis() // reader->SetTrackStatus(status); + reader->SwitchOnCleanStdAOD(); reader->Print(""); diff --git a/PWG4/macros/ConfigAnalysisPhotonMC.C b/PWG4/macros/ConfigAnalysisPhotonMC.C index 623b797efff..709ed302efd 100644 --- a/PWG4/macros/ConfigAnalysisPhotonMC.C +++ b/PWG4/macros/ConfigAnalysisPhotonMC.C @@ -65,7 +65,7 @@ AliAnaPartCorrMaker* ConfigAnalysis() reader->SwitchOffOverlapCheck(); //Remove the temporal AODs we create. - reader->SwitchOffWriteStdAOD(); + reader->SwitchOnCleanStdAOD(); reader->Print(""); diff --git a/PWG4/macros/ConfigAnalysisPi0.C b/PWG4/macros/ConfigAnalysisPi0.C index 021495431ad..b2ec00db8cc 100644 --- a/PWG4/macros/ConfigAnalysisPi0.C +++ b/PWG4/macros/ConfigAnalysisPi0.C @@ -53,7 +53,7 @@ AliAnaPartCorrMaker* ConfigAnalysis() reader->SetFidutialCut(fidCut); //Remove the temporal AODs we create. - reader->SwitchOffWriteStdAOD(); + reader->SwitchOnCleanStdAOD(); reader->Print(""); diff --git a/PWG4/macros/ConfigAnalysisPi0EbE.C b/PWG4/macros/ConfigAnalysisPi0EbE.C index e94a4262b29..3adb54a361c 100644 --- a/PWG4/macros/ConfigAnalysisPi0EbE.C +++ b/PWG4/macros/ConfigAnalysisPi0EbE.C @@ -64,7 +64,7 @@ AliAnaPartCorrMaker* ConfigAnalysis() // reader->SetTrackStatus(status); //Remove the temporal AODs we create. - reader->SwitchOffWriteStdAOD(); + reader->SwitchOnCleanStdAOD(); reader->Print(""); diff --git a/PWG4/macros/ConfigAnalysisPi0EbEIsolated.C b/PWG4/macros/ConfigAnalysisPi0EbEIsolated.C index 680964ad2af..ea815eb0455 100644 --- a/PWG4/macros/ConfigAnalysisPi0EbEIsolated.C +++ b/PWG4/macros/ConfigAnalysisPi0EbEIsolated.C @@ -65,7 +65,7 @@ AliAnaPartCorrMaker* ConfigAnalysis() // reader->SetTrackStatus(status); //Remove the temporal AODs we create. - reader->SwitchOffWriteStdAOD(); + reader->SwitchOnCleanStdAOD(); reader->Print(""); -- 2.43.0