From 91ff2fb3288610cb3faf8df6348858d930d6b74f Mon Sep 17 00:00:00 2001 From: hristov Date: Mon, 28 Feb 2011 19:54:44 +0000 Subject: [PATCH] LOG muondep: - Coverity fix LOG muon: - Coverity fix - Fixes to cope with new alien plugin - Store Event_Stat info in output Diego --- PWG3/muon/AliAnalysisTaskSingleMu.cxx | 32 ++++++++++++++++++++++---- PWG3/muondep/AliAnalysisTaskPileup.cxx | 11 ++++----- PWG3/muondep/AliAnalysisTaskPileup.h | 2 +- 3 files changed, 34 insertions(+), 11 deletions(-) diff --git a/PWG3/muon/AliAnalysisTaskSingleMu.cxx b/PWG3/muon/AliAnalysisTaskSingleMu.cxx index 1ade6a3000c..67132ae6dc3 100644 --- a/PWG3/muon/AliAnalysisTaskSingleMu.cxx +++ b/PWG3/muon/AliAnalysisTaskSingleMu.cxx @@ -197,6 +197,27 @@ void AliAnalysisTaskSingleMu::FinishTaskOutput() histo2D->GetXaxis()->SetLimits(minX, maxX); AliInfo(Form("Histogram %s run limits (%f, %f)",histo2D->GetName(), minX, maxX)); } + + // Add stat. info from physics selection + // (usefull when running on AODs) + AliInputEventHandler* inputHandler = dynamic_cast(AliAnalysisManager::GetAnalysisManager()->GetInputEventHandler()); + TString histoName = ""; + if ( inputHandler ) { + for ( Int_t istat=0; istat<2; istat++ ) { + TString statType = ( istat == 0 ) ? "ALL" : "BIN0"; + TH2* hStat = dynamic_cast(inputHandler->GetStatistics(statType.Data())); + if ( hStat ) { + histoName = Form("%s_SingleMuon", hStat->GetName()); + TH2* cloneStat = dynamic_cast(hStat->Clone(histoName.Data())); + cloneStat->SetDirectory(0); + fHistoList->Add(cloneStat); + } + else { + AliWarning("Stat histogram not available"); + break; + } + } // loop on stat type + } } @@ -209,9 +230,12 @@ void AliAnalysisTaskSingleMu::UserCreateOutputObjects() AliInfo(Form(" CreateOutputObjects of task %s\n", GetName())); // initialize histogram lists - if ( ! fHistoList ) fHistoList = new TList(); - if ( ! fHistoListMC ) fHistoListMC = new TList(); - if ( ! fHistoListQA ) fHistoListQA = new TList(); + fHistoList = new TList(); + fHistoList->SetOwner(); + fHistoListMC = new TList(); + fHistoListMC->SetOwner(); + fHistoListQA = new TList(); + fHistoListQA->SetOwner(); // Init variables fVarFloat = new Float_t [kNvarFloat]; @@ -883,7 +907,7 @@ void AliAnalysisTaskSingleMu::Terminate(Option_t *) { TCanvas *c1_SingleMu = new TCanvas(currName.Data(),"Vz vs Pt",10,10,310,310); c1_SingleMu->SetFillColor(10); c1_SingleMu->SetHighLightColor(10); c1_SingleMu->SetLeftMargin(0.15); c1_SingleMu->SetBottomMargin(0.15); - TH2* histo = dynamic_cast(container->Project(kStepReconstructed,kHvarPt,kHvarVz)); + TH2* histo = static_cast(container->Project(kStepReconstructed,kHvarPt,kHvarVz)); currName = GetName(); currName.Prepend("hPtVz_"); histo->SetName(currName.Data()); diff --git a/PWG3/muondep/AliAnalysisTaskPileup.cxx b/PWG3/muondep/AliAnalysisTaskPileup.cxx index 2d3f91d1099..8fca45cc0cc 100644 --- a/PWG3/muondep/AliAnalysisTaskPileup.cxx +++ b/PWG3/muondep/AliAnalysisTaskPileup.cxx @@ -145,7 +145,7 @@ AliAnalysisTaskPileup::~AliAnalysisTaskPileup() delete fTriggerClassIndex; #if defined(READOCDB) - delete fTriggerRunScalers; + //delete fTriggerRunScalers; // Not owner -> Owned by OCDB delete fStorageList; #endif @@ -216,8 +216,7 @@ void AliAnalysisTaskPileup::NotifyRun() entry = AliCDBManager::Instance()->Get("GRP/CTP/Scalers"); if ( ! entry ) return; AliInfo("Found an AliTriggerRunScalers in GRP/CTP/Scalers, reading it"); - fTriggerRunScalers = dynamic_cast (entry->GetObject()); - entry->SetOwner(0); + fTriggerRunScalers = static_cast (entry->GetObject()); if (fTriggerRunScalers->CorrectScalersOverflow() == 0) AliInfo("32bit Trigger counters corrected for overflow"); fIsInitCDB = kTRUE; @@ -361,7 +360,7 @@ void AliAnalysisTaskPileup::UserExec(Option_t *) #if defined(READOCDB) Double_t deltaScalersBeam = 0., deltaScalers = 0.; #endif - Bool_t isFiredOnce = kFALSE; + //Bool_t isFiredOnce = kFALSE; for (Int_t itrig=0; itrigGetTriggerScalersForClass(classIndex+1); // REMEMBER TO CUT //if ( classIndex > 1 ) printf("Index: trigger %i scaler %i\n", classIndex+1, trigScaler->GetClassIndex()); // REMEMBER TO CUT diff --git a/PWG3/muondep/AliAnalysisTaskPileup.h b/PWG3/muondep/AliAnalysisTaskPileup.h index 25194dc8f5f..ba5493d7cf6 100644 --- a/PWG3/muondep/AliAnalysisTaskPileup.h +++ b/PWG3/muondep/AliAnalysisTaskPileup.h @@ -11,7 +11,7 @@ /// Based on the work by L. Aphecetche - SUBATECH Nantes //Author: Diego Stocco - SUBATECH Nantes -#define READOCDB +//#define READOCDB #include "AliAnalysisTaskSE.h" -- 2.39.3