From a51901448b8a12dd001f06daf5c1d6789a8ca104 Mon Sep 17 00:00:00 2001 From: loizides Date: Mon, 28 May 2012 19:28:11 +0000 Subject: [PATCH] add task --- PWGGA/EMCALJetTasks/macros/AddTaskSAQA.C | 63 ++++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 PWGGA/EMCALJetTasks/macros/AddTaskSAQA.C diff --git a/PWGGA/EMCALJetTasks/macros/AddTaskSAQA.C b/PWGGA/EMCALJetTasks/macros/AddTaskSAQA.C new file mode 100644 index 00000000000..c50db407b2e --- /dev/null +++ b/PWGGA/EMCALJetTasks/macros/AddTaskSAQA.C @@ -0,0 +1,63 @@ +// $Id: AddTaskSAQA.C 56113 2012-05-01 21:39:27Z loizides $ + +AliAnalysisTaskSAQA* AddTaskSAQA( + const char *taskname = "AliAnalysisTaskSAQA", + const char *ntracks = "Tracks", + const char *nclusters = "CaloClusters", + const char *njets = "Jets", + const char *ntrgclusters = "ClustersL1GAMMAFEE", + Double_t jetradius = 0.4, + Double_t jetptcut = 1, + Double_t jetareacut = 0.1, + UInt_t type = AliAnalysisTaskEmcal::kTPC +) +{ + // Get the pointer to the existing analysis manager via the static access method. + //============================================================================== + AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager(); + if (!mgr) + { + ::Error("AddTaskSAQA", "No analysis manager to connect to."); + return NULL; + } + + // Check the analysis type using the event handlers connected to the analysis manager. + //============================================================================== + if (!mgr->GetInputEventHandler()) + { + ::Error("AddTaskSAQA", "This task requires an input event handler"); + return NULL; + } + + //------------------------------------------------------- + // Init the task and do settings + //------------------------------------------------------- + AliAnalysisTaskSAQA* qaTask = new AliAnalysisTaskSAQA(taskname); + qaTask->SetTracksName(ntracks); + qaTask->SetClusName(nclusters); + qaTask->SetJetsName(njets); + qaTask->SetTrgClusName(ntrgclusters); + qaTask->SetJetRadius(jetradius); + qaTask->SetJetPtCut(jetptcut); + qaTask->SetJetAreaCut(jetareacut); + qaTask->SetAnaType(type); + + //------------------------------------------------------- + // Final settings, pass to manager and set the containers + //------------------------------------------------------- + + mgr->AddTask(qaTask); + + // Create containers for input/output + AliAnalysisDataContainer *cinput1 = mgr->GetCommonInputContainer() ; + + TString contName(taskname); + contName += "_histos"; + AliAnalysisDataContainer *coutput1 = mgr->CreateContainer(contName.Data(), + TList::Class(),AliAnalysisManager::kOutputContainer, + Form("%s", AliAnalysisManager::GetCommonFileName())); + mgr->ConnectInput (qaTask, 0, cinput1 ); + mgr->ConnectOutput (qaTask, 1, coutput1 ); + + return qaTask; +} -- 2.43.0