From: schutz Date: Mon, 5 Mar 2007 09:38:49 +0000 (+0000) Subject: Replace AliTriggerPHOS by AliAnaCaloTrigger X-Git-Url: http://git.uio.no/git/?p=u%2Fmrichter%2FAliRoot.git;a=commitdiff_plain;h=f3299f82b958b69e5249bc864f30fc995bbe6ec5;hp=05d1294c9062ba4a5ca14f0d795cb09aa21b63d8 Replace AliTriggerPHOS by AliAnaCaloTrigger --- diff --git a/PWG4/AliTriggerPHOS.cxx b/PWG4/AliAnaCaloTrigger.cxx similarity index 73% rename from PWG4/AliTriggerPHOS.cxx rename to PWG4/AliAnaCaloTrigger.cxx index c5339f04b37..df93e60fcf1 100644 --- a/PWG4/AliTriggerPHOS.cxx +++ b/PWG4/AliAnaCaloTrigger.cxx @@ -14,9 +14,9 @@ **************************************************************************/ //_________________________________________________________________________ -// An analysis task to check the PHOS photon data in simulated data +// An analysis task to check the PHOS/EMCAL simulated trigger // -//*-- Yves Schutz +//*-- Yves Schutz & Gustavo Conesa Balbastre ////////////////////////////////////////////////////////////////////////////// #include @@ -24,16 +24,17 @@ #include #include -#include "AliTriggerPHOS.h" +#include "AliAnaCaloTrigger.h" #include "AliESD.h" #include "AliLog.h" //______________________________________________________________________________ -AliTriggerPHOS::AliTriggerPHOS(const char *name) : +AliAnaCaloTrigger::AliAnaCaloTrigger(const char *name) : AliAnalysisTask(name,""), fChain(0), fESD(0), fOutputContainer(0), + fCalorimeter("PHOS"), fNtTrigger22(0), fNtTriggerNN(0) @@ -46,7 +47,7 @@ AliTriggerPHOS::AliTriggerPHOS(const char *name) : } //______________________________________________________________________________ -AliTriggerPHOS::~AliTriggerPHOS() +AliAnaCaloTrigger::~AliAnaCaloTrigger() { // dtor fOutputContainer->Clear() ; @@ -57,7 +58,7 @@ AliTriggerPHOS::~AliTriggerPHOS() //______________________________________________________________________________ -void AliTriggerPHOS::ConnectInputData(const Option_t*) +void AliAnaCaloTrigger::ConnectInputData(const Option_t*) { // Initialisation of branch container and histograms @@ -82,12 +83,12 @@ void AliTriggerPHOS::ConnectInputData(const Option_t*) //________________________________________________________________________ -void AliTriggerPHOS::CreateOutputObjects() +void AliAnaCaloTrigger::CreateOutputObjects() { // create histograms - fNtTrigger22 = new TNtuple("PHOStrigger22", "Trigger data 2x2 patch", "a22:a220:enMax:phEnMax:eta22:phi22:etaMax:phiMax:phEtaMax:phPhiMax"); - fNtTriggerNN = new TNtuple("PHOStriggerNN", "Trigger data NxN patch", "aNN:aNN0:enMax:phEnMax:etaNN:phiNN:etaMax:phiMax:phEtaMax:phPhiMax"); + fNtTrigger22 = new TNtuple(fCalorimeter+"trigger22", "Trigger data 2x2 patch", "a22:a220:enMax:phEnMax:eta22:phi22:etaMax:phiMax:phEtaMax:phPhiMax"); + fNtTriggerNN = new TNtuple(fCalorimeter+"triggerNN", "Trigger data NxN patch", "aNN:aNN0:enMax:phEnMax:etaNN:phiNN:etaMax:phiMax:phEtaMax:phPhiMax"); // create output container @@ -100,7 +101,7 @@ void AliTriggerPHOS::CreateOutputObjects() } //______________________________________________________________________________ -void AliTriggerPHOS::Exec(Option_t *) +void AliAnaCaloTrigger::Exec(Option_t *) { // Processing of one event @@ -114,18 +115,32 @@ void AliTriggerPHOS::Exec(Option_t *) if ( !((entry-1)%100) ) AliInfo(Form("%s ----> Processing event # %lld", (dynamic_cast(fChain))->GetFile()->GetName(), entry)) ; - // ************************ PHOS ************************************* - // Get trigger information + // Get trigger information of fCalorimeter + TArrayF * triggerAmplitudes = 0x0 ; + TArrayF * triggerPosition = 0x0 ; + Int_t firstCaloCluster = 0 ; + Int_t numberOfCaloClusters = 0 ; + + if(fCalorimeter == "PHOS"){ + triggerAmplitudes = fESD->GetPHOSTriggerAmplitudes(); + triggerPosition = fESD->GetPHOSTriggerPosition(); + firstCaloCluster = fESD->GetFirstPHOSCluster() ; + numberOfCaloClusters = fESD->GetNumberOfPHOSClusters() ; + } + else if(fCalorimeter == "EMCAL"){ + triggerAmplitudes = fESD->GetEMCALTriggerAmplitudes(); + triggerPosition = fESD->GetEMCALTriggerPosition(); + firstCaloCluster = fESD->GetFirstEMCALCluster() ; + numberOfCaloClusters = fESD->GetNumberOfEMCALClusters() ; + } // trigger amplitudes - const TArrayF * triggerAmplitudes = fESD->GetPHOSTriggerAmplitudes(); const Float_t a22 = static_cast(triggerAmplitudes->At(0)) ; const Float_t a22O = static_cast(triggerAmplitudes->At(1)) ; const Float_t aNN = static_cast(triggerAmplitudes->At(2)) ; const Float_t aNNO = static_cast(triggerAmplitudes->At(3)) ; // trigger position - const TArrayF * triggerPosition = fESD->GetPHOSTriggerPosition(); const Float_t x22 = static_cast(triggerPosition->At(0)) ; const Float_t y22 = static_cast(triggerPosition->At(1)) ; const Float_t z22 = static_cast(triggerPosition->At(2)) ; @@ -133,8 +148,7 @@ void AliTriggerPHOS::Exec(Option_t *) const Float_t yNN = static_cast(triggerPosition->At(4)) ; const Float_t zNN = static_cast(triggerPosition->At(5)) ; - Int_t firstPhosCluster = fESD->GetFirstPHOSCluster() ; - const Int_t numberOfPhosClusters = fESD->GetNumberOfPHOSClusters() ; + Float_t enMax = 0. ; Float_t phEnMax = 0. ; @@ -150,19 +164,19 @@ void AliTriggerPHOS::Exec(Option_t *) Float_t etaNN = vposNN.Eta() ; Float_t phiNN = vposNN.Phi() * TMath::RadToDeg() + 360. ; - Int_t phosCluster ; + Int_t icaloCluster ; - // loop over the PHOS Cluster + // loop over the Calorimeters Clusters - for(phosCluster = firstPhosCluster ; phosCluster < firstPhosCluster + numberOfPhosClusters ; phosCluster++) { - AliESDCaloCluster * caloCluster = fESD->GetCaloCluster(phosCluster) ; - if (caloCluster) { + for(icaloCluster = firstCaloCluster ; icaloCluster < firstCaloCluster + numberOfCaloClusters ; icaloCluster++) { + AliESDCaloCluster * cluster = fESD->GetCaloCluster(icaloCluster) ; + if (cluster) { - Float_t cluEnergy = caloCluster->GetClusterEnergy() ; + Float_t cluEnergy = cluster->GetClusterEnergy() ; Float_t pos[3] ; TVector3 vpos ; - caloCluster->GetGlobalPosition( pos ) ; + cluster->GetGlobalPosition( pos ) ; if ( cluEnergy > enMax) { enMax = cluEnergy ; @@ -171,7 +185,7 @@ void AliTriggerPHOS::Exec(Option_t *) phiMax = vpos.Phi() ; } - Float_t * pid = caloCluster->GetPid() ; + Float_t * pid = cluster->GetPid() ; if(pid[AliPID::kPhoton] > 0.9) { if ( cluEnergy > phEnMax) { @@ -193,7 +207,7 @@ void AliTriggerPHOS::Exec(Option_t *) } //______________________________________________________________________________ -void AliTriggerPHOS::Terminate(Option_t *) +void AliAnaCaloTrigger::Terminate(Option_t *) { // Processing when the event loop is ended diff --git a/PWG4/AliTriggerPHOS.h b/PWG4/AliAnaCaloTrigger.h similarity index 68% rename from PWG4/AliTriggerPHOS.h rename to PWG4/AliAnaCaloTrigger.h index 1acd822169a..64ef33b8ed9 100644 --- a/PWG4/AliTriggerPHOS.h +++ b/PWG4/AliAnaCaloTrigger.h @@ -1,5 +1,5 @@ -#ifndef ALIPHOSQATASK_H -#define ALIPHOSQATASK_H +#ifndef ALIANACALOTRIGGER_H +#define ALIANACALOTRIGGER_H /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * * See cxx source for full Copyright notice */ //______________________________________________________________________________ @@ -16,27 +16,32 @@ class TNtuple ; class TH1D ; class TH1I ; -class AliTriggerPHOS : public AliAnalysisTask { +class AliAnaCaloTrigger : public AliAnalysisTask { public: - AliTriggerPHOS(const char *name) ; - virtual ~AliTriggerPHOS() ; + AliAnaCaloTrigger(const char *name) ; + virtual ~AliAnaCaloTrigger() ; virtual void Exec(Option_t * opt = "") ; virtual void ConnectInputData(Option_t *); virtual void CreateOutputObjects(); virtual void Terminate(Option_t * opt = "") ; + TString GetCalorimeter() const {return fCalorimeter ; } + void SetCalorimeter(TString calo) {fCalorimeter = calo ; } + private: TTree * fChain ; //!pointer to the analyzed TTree or TChain AliESD * fESD ; //! Declaration of leave types TObjArray * fOutputContainer ; //! output data container + TString fCalorimeter ; // "PHOS" or "EMCAL" + // Histograms TNtuple * fNtTrigger22 ; TNtuple * fNtTriggerNN ; - ClassDef(AliTriggerPHOS, 0); // a PHOS photon analysis task + ClassDef(AliAnaCaloTrigger, 0); // a PHOS photon analysis task }; -#endif // ALIPHOSQATASK_H +#endif // ALIANACALOTRIGGER_H diff --git a/PWG4/PWG4GammaLinkDef.h b/PWG4/PWG4GammaLinkDef.h index cbaae05ed8a..3880e669552 100644 --- a/PWG4/PWG4GammaLinkDef.h +++ b/PWG4/PWG4GammaLinkDef.h @@ -8,6 +8,6 @@ #pragma link C++ class AliAnaGammaIsolCut+; #pragma link C++ class AliAnaGammaHadron+; #pragma link C++ class AliAnaGammaJet+; -#pragma link C++ class AliTriggerPHOS+; +#pragma link C++ class AliAnaCaloTrigger+; #endif diff --git a/PWG4/libPWG4Gamma.pkg b/PWG4/libPWG4Gamma.pkg index 63b42acc0f1..4cb4aeb59ac 100644 --- a/PWG4/libPWG4Gamma.pkg +++ b/PWG4/libPWG4Gamma.pkg @@ -1,4 +1,4 @@ -SRCS = AliAnaGammaDirect.cxx AliAnaGammaIsolCut.cxx AliAnaGammaHadron.cxx AliAnaGammaJet.cxx AliTriggerPHOS.cxx +SRCS = AliAnaGammaDirect.cxx AliAnaGammaIsolCut.cxx AliAnaGammaHadron.cxx AliAnaGammaJet.cxx AliAnaCaloTrigger.cxx HDRS:= $(SRCS:.cxx=.h)