From 8c87d22cc85d165470f891c83ab1c7a7154be150 Mon Sep 17 00:00:00 2001 From: morsch Date: Fri, 24 Jun 2011 13:51:44 +0000 Subject: [PATCH] Store ZDC information in AliAODZDC Chiara Oppedisano --- ANALYSIS/AliAnalysisTaskESDfilter.cxx | 169 ++++++++++++++++---------- ANALYSIS/AliAnalysisTaskESDfilter.h | 5 +- 2 files changed, 106 insertions(+), 68 deletions(-) diff --git a/ANALYSIS/AliAnalysisTaskESDfilter.cxx b/ANALYSIS/AliAnalysisTaskESDfilter.cxx index b38cba82ba6..0aa7667dada 100644 --- a/ANALYSIS/AliAnalysisTaskESDfilter.cxx +++ b/ANALYSIS/AliAnalysisTaskESDfilter.cxx @@ -65,39 +65,40 @@ AliAnalysisTaskESDfilter::AliAnalysisTaskESDfilter(): fHighPthreshold(0), fPtshape(0x0), fEnableFillAOD(kTRUE), -fUsedTrack(0x0), -fUsedKink(0x0), -fUsedV0(0x0), -fAODTrackRefs(0x0), -fAODV0VtxRefs(0x0), -fAODV0Refs(0x0), -fMChandler(0x0), -fNumberOfTracks(0), -fNumberOfPositiveTracks(0), -fNumberOfV0s(0), -fNumberOfVertices(0), -fNumberOfCascades(0), -fNumberOfKinks(0), -fOldESDformat(kFALSE), -fPrimaryVertex(0x0), -fTPCOnlyFilterMask(0), -fHybridFilterMaskITSTPC(0), -fHybridFilterMaskTPC0(0), -fHybridFilterMaskTPC1(0), -fIsVZEROEnabled(kTRUE), -fAreCascadesEnabled(kTRUE), -fAreV0sEnabled(kTRUE), -fAreKinksEnabled(kTRUE), -fAreTracksEnabled(kTRUE), -fArePmdClustersEnabled(kTRUE), -fAreCaloClustersEnabled(kTRUE), -fAreEMCALCellsEnabled(kTRUE), -fArePHOSCellsEnabled(kTRUE), -fAreTrackletsEnabled(kTRUE), -fESDpid(0x0), -fIsPidOwner(kFALSE), -fTimeZeroType(AliESDpid::kTOF_T0), -fTPCaloneTrackCuts(0) + fUsedTrack(0x0), + fUsedKink(0x0), + fUsedV0(0x0), + fAODTrackRefs(0x0), + fAODV0VtxRefs(0x0), + fAODV0Refs(0x0), + fMChandler(0x0), + fNumberOfTracks(0), + fNumberOfPositiveTracks(0), + fNumberOfV0s(0), + fNumberOfVertices(0), + fNumberOfCascades(0), + fNumberOfKinks(0), + fOldESDformat(kFALSE), + fPrimaryVertex(0x0), + fTPCOnlyFilterMask(0), + fHybridFilterMaskITSTPC(0), + fHybridFilterMaskTPC0(0), + fHybridFilterMaskTPC1(0), + fIsVZEROEnabled(kTRUE), + fIsZDCEnabled(kTRUE), + fAreCascadesEnabled(kTRUE), + fAreV0sEnabled(kTRUE), + fAreKinksEnabled(kTRUE), + fAreTracksEnabled(kTRUE), + fArePmdClustersEnabled(kTRUE), + fAreCaloClustersEnabled(kTRUE), + fAreEMCALCellsEnabled(kTRUE), + fArePHOSCellsEnabled(kTRUE), + fAreTrackletsEnabled(kTRUE), + fESDpid(0x0), + fIsPidOwner(kFALSE), + fTimeZeroType(AliESDpid::kTOF_T0), + fTPCaloneTrackCuts(0) { // Default constructor } @@ -112,44 +113,45 @@ AliAnalysisTaskESDfilter::AliAnalysisTaskESDfilter(const char* name): fHighPthreshold(0), fPtshape(0x0), fEnableFillAOD(kTRUE), -fUsedTrack(0x0), -fUsedKink(0x0), -fUsedV0(0x0), -fAODTrackRefs(0x0), -fAODV0VtxRefs(0x0), -fAODV0Refs(0x0), -fMChandler(0x0), -fNumberOfTracks(0), -fNumberOfPositiveTracks(0), -fNumberOfV0s(0), -fNumberOfVertices(0), -fNumberOfCascades(0), -fNumberOfKinks(0), -fOldESDformat(kFALSE), -fPrimaryVertex(0x0), -fTPCOnlyFilterMask(0), -fHybridFilterMaskITSTPC(0), -fHybridFilterMaskTPC0(0), -fHybridFilterMaskTPC1(0), -fIsVZEROEnabled(kTRUE), -fAreCascadesEnabled(kTRUE), -fAreV0sEnabled(kTRUE), -fAreKinksEnabled(kTRUE), -fAreTracksEnabled(kTRUE), -fArePmdClustersEnabled(kTRUE), -fAreCaloClustersEnabled(kTRUE), -fAreEMCALCellsEnabled(kTRUE), -fArePHOSCellsEnabled(kTRUE), -fAreTrackletsEnabled(kTRUE), -fESDpid(0x0), -fIsPidOwner(kFALSE), -fTimeZeroType(AliESDpid::kTOF_T0), -fTPCaloneTrackCuts(0) + fUsedTrack(0x0), + fUsedKink(0x0), + fUsedV0(0x0), + fAODTrackRefs(0x0), + fAODV0VtxRefs(0x0), + fAODV0Refs(0x0), + fMChandler(0x0), + fNumberOfTracks(0), + fNumberOfPositiveTracks(0), + fNumberOfV0s(0), + fNumberOfVertices(0), + fNumberOfCascades(0), + fNumberOfKinks(0), + fOldESDformat(kFALSE), + fPrimaryVertex(0x0), + fTPCOnlyFilterMask(0), + fHybridFilterMaskITSTPC(0), + fHybridFilterMaskTPC0(0), + fHybridFilterMaskTPC1(0), + fIsVZEROEnabled(kTRUE), + fIsZDCEnabled(kTRUE), + fAreCascadesEnabled(kTRUE), + fAreV0sEnabled(kTRUE), + fAreKinksEnabled(kTRUE), + fAreTracksEnabled(kTRUE), + fArePmdClustersEnabled(kTRUE), + fAreCaloClustersEnabled(kTRUE), + fAreEMCALCellsEnabled(kTRUE), + fArePHOSCellsEnabled(kTRUE), + fAreTrackletsEnabled(kTRUE), + fESDpid(0x0), + fIsPidOwner(kFALSE), + fTimeZeroType(AliESDpid::kTOF_T0), + fTPCaloneTrackCuts(0) { // Constructor } AliAnalysisTaskESDfilter::~AliAnalysisTaskESDfilter(){ - if(fIsPidOwner)delete fESDpid; + if(fIsPidOwner) delete fESDpid; } //______________________________________________________________________________ void AliAnalysisTaskESDfilter::UserCreateOutputObjects() @@ -1562,6 +1564,39 @@ void AliAnalysisTaskESDfilter::ConvertVZERO(const AliESDEvent& esd) *vzeroData = *(esd.GetVZEROData()); } +//______________________________________________________________________________ +void AliAnalysisTaskESDfilter::ConvertZDC(const AliESDEvent& esd) +{ + // Convert ZDC data + AliESDZDC* esdZDC = esd.GetZDCData(); + + const Double_t zem1Energy = esdZDC->GetZEM1Energy(); + const Double_t zem2Energy = esdZDC->GetZEM2Energy(); + + const Double_t *towZNC = esdZDC->GetZNCTowerEnergy(); + const Double_t *towZPC = esdZDC->GetZPCTowerEnergy(); + const Double_t *towZNA = esdZDC->GetZNATowerEnergy(); + const Double_t *towZPA = esdZDC->GetZPATowerEnergy(); + const Double_t *towZNCLG = esdZDC->GetZNCTowerEnergyLR(); + const Double_t *towZNALG = esdZDC->GetZNATowerEnergyLR(); + + AliAODZDC* zdcAOD = AODEvent()->GetZDCData(); + + zdcAOD->SetZEM1Energy(zem1Energy); + zdcAOD->SetZEM2Energy(zem2Energy); + zdcAOD->SetZNCTowers(towZNC, towZNCLG); + zdcAOD->SetZNATowers(towZNA, towZNALG); + zdcAOD->SetZPCTowers(towZPC); + zdcAOD->SetZPATowers(towZPA); + + zdcAOD->SetZDCParticipants(esdZDC->GetZDCParticipants(), esdZDC->GetZDCPartSideA(), esdZDC->GetZDCPartSideC()); + zdcAOD->SetZDCImpactParameter(esdZDC->GetImpactParameter(), esdZDC->GetImpactParamSideA(), + esdZDC->GetImpactParamSideC()); + zdcAOD->SetZDCTDCSum(esdZDC->GetZNTDCSum(0)); + zdcAOD->SetZDCTDCDiff(esdZDC->GetZNTDCDiff(0)); + +} + //______________________________________________________________________________ void AliAnalysisTaskESDfilter::ConvertESDtoAOD() { diff --git a/ANALYSIS/AliAnalysisTaskESDfilter.h b/ANALYSIS/AliAnalysisTaskESDfilter.h index 296591106b2..90a546035ec 100644 --- a/ANALYSIS/AliAnalysisTaskESDfilter.h +++ b/ANALYSIS/AliAnalysisTaskESDfilter.h @@ -55,6 +55,7 @@ fHybridFilterMaskTPC1 = filterMask1;} void PrintTask(Option_t *option="all", Int_t indent=0) const; void DisableVZERO() { fIsVZEROEnabled = kFALSE; } + void DisableZDC() { fIsZDCEnabled = kFALSE; } void DisableCascades() { fAreCascadesEnabled = kFALSE; } void DisableV0s() { fAreV0sEnabled = kFALSE; } void DisableKinks() { fAreKinksEnabled = kFALSE; } @@ -85,6 +86,7 @@ private: void ConvertTracklets(const AliESDEvent& esd); void ConvertTPCOnlyTracks(const AliESDEvent& esd); void ConvertVZERO(const AliESDEvent& esd); + void ConvertZDC(const AliESDEvent& esd); TClonesArray& Tracks(); TClonesArray& V0s(); @@ -121,6 +123,7 @@ private: UInt_t fHybridFilterMaskTPC1; // Filter Mask flag refitted TPC only tracks with lose ITScuts Bool_t fIsVZEROEnabled; // whether or not to fill the vzero branch (true by default) + Bool_t fIsZDCEnabled; // whether or not to fill the zdc branch (true by default) Bool_t fAreCascadesEnabled; // whether or not to fill the cascades branch (true by default) Bool_t fAreV0sEnabled; // whether or not to fill the v0 branch (true by default) Bool_t fAreKinksEnabled; // whether or not to fill the kinks (true by default) @@ -135,7 +138,7 @@ private: Int_t fTimeZeroType; // time zero type AliESDtrackCuts* fTPCaloneTrackCuts; // TPC stand-alone track cuts - ClassDef(AliAnalysisTaskESDfilter, 10); // Analysis task for standard ESD filtering + ClassDef(AliAnalysisTaskESDfilter, 11); // Analysis task for standard ESD filtering }; #endif -- 2.43.5