From 599338e5cb12cb8ea62e6bcb8eee7c75447ec1fb Mon Sep 17 00:00:00 2001 From: kleinb Date: Sun, 13 Dec 2009 10:43:13 +0000 Subject: [PATCH] updated for mini train, AddTask for new boo keeping task --- PWG4/macros/AddTaskJetServices.C | 41 ++++++++++++++++++++++++ PWG4/macros/AddTaskJetSpectrum2.C | 27 ++++++++++++++-- PWG4/macros/AddTaskPWG4HighPtQATPConly.C | 3 +- 3 files changed, 67 insertions(+), 4 deletions(-) create mode 100644 PWG4/macros/AddTaskJetServices.C diff --git a/PWG4/macros/AddTaskJetServices.C b/PWG4/macros/AddTaskJetServices.C new file mode 100644 index 00000000000..e79488983a4 --- /dev/null +++ b/PWG4/macros/AddTaskJetServices.C @@ -0,0 +1,41 @@ +AliAnalysisTaskJetServices *AddTaskJetServices() +{ + // Get the pointer to the existing analysis manager via the static access method. + //============================================================================== + AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager(); + if (!mgr) { + ::Error("AddTaskJetServices", "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("AddTaskJetServices", "This task requires an input event handler"); + return NULL; + } + + TString type = mgr->GetInputEventHandler()->GetDataType(); + type.ToUpper(); + // Create the task and configure it. + //=========================================================================== + + AliAnalysisTaskJetServices* pwg4serv = new AliAnalysisTaskJetServices("Jet Services"); + + + if(type == "AOD"){ + pwg4serv->SetAODInput(kTRUE); + } + mgr->AddTask(pwg4serv); + + // Create ONLY the output containers for the data produced by the task. + // Get and connect other common input/output containers via the manager as below + //============================================================================== + AliAnalysisDataContainer *coutput1_Serv = mgr->CreateContainer("pwg4serv", TList::Class(),AliAnalysisManager::kOutputContainer,Form("%s:PWG4_services",AliAnalysisManager::GetCommonFileName())); + + mgr->ConnectInput (pwg4serv, 0, mgr->GetCommonInputContainer()); + mgr->ConnectOutput (pwg4serv, 0, mgr->GetCommonOutputContainer()); + mgr->ConnectOutput (pwg4serv, 1, coutput1_Serv ); + + return pwg4serv; +} diff --git a/PWG4/macros/AddTaskJetSpectrum2.C b/PWG4/macros/AddTaskJetSpectrum2.C index 2d58bc8947e..335b0324899 100644 --- a/PWG4/macros/AddTaskJetSpectrum2.C +++ b/PWG4/macros/AddTaskJetSpectrum2.C @@ -1,4 +1,27 @@ -AliAnalysisTaskJetSpectrum2 *AddTaskJetSpectrum2(char* bRec = "jets",char* bGen = "jetsAODMC_UA104",UInt_t filterMask = 16) +AliAnalysisTaskJetSpectrum2 *AddTaskJetSpectrum2(char* bRec = "jets",char* bGen = "jetsAODMC_UA104",UInt_t filterMask = 16); + + +AliAnalysisTaskJetSpectrum2 *AddTaskJetSpectrum2Delta(UInt_t filterMask = 16,Bool_t kUseAODMC = kFALSE){ + AliAnalysisTaskJetSpectrum2 *js = 0; + if(kUseAODMC){ + js = AddTaskJetSpectrum2("jets","jetsAODMC_UA104",filterMask); + js = AddTaskJetSpectrum2("jets","jetsAODMC2_UA104",filterMask); + + js = AddTaskJetSpectrum2("jetsAOD_FASTJET04","jetsAODMC_FASTJET04",filterMask); + js = AddTaskJetSpectrum2("jetsAOD_FASTJET04","jetsAODMC2_FASTJET04",filterMask); + + js = AddTaskJetSpectrum2("jetsAOD_UA107","jetsAODMC_UA107",filterMask); + } + js = AddTaskJetSpectrum2("jets","jetsAOD_FASTJET04",filterMask); + js = AddTaskJetSpectrum2("jetsAOD_FASTJET04","",filterMask); + js = AddTaskJetSpectrum2("jetsAOD_UA107","",filterMask); + js->SetRecEtaWindow(0.2); + + return js; +} + + +AliAnalysisTaskJetSpectrum2 *AddTaskJetSpectrum2(char* bRec,char* bGen ,UInt_t filterMask) { // Creates a jet fider task, configures it and adds it to the analysis manager. @@ -59,7 +82,7 @@ AliAnalysisTaskJetSpectrum2 *AddTaskJetSpectrum2(char* bRec = "jets",char* bGen // Create ONLY the output containers for the data produced by the task. // Get and connect other common input/output containers via the manager as below //============================================================================== - AliAnalysisDataContainer *coutput1_Spec = mgr->CreateContainer("pwg4spec2", TList::Class(),AliAnalysisManager::kOutputContainer,Form("%s:PWG4_spec2_%s_%s",AliAnalysisManager::GetCommonFileName(),bRec,bGen)); + AliAnalysisDataContainer *coutput1_Spec = mgr->CreateContainer(Form("pwg4spec2_%s_%s",bRec,bGen), TList::Class(),AliAnalysisManager::kOutputContainer,Form("%s:PWG4_spec2_%s_%s",AliAnalysisManager::GetCommonFileName(),bRec,bGen)); mgr->ConnectInput (pwg4spec, 0, mgr->GetCommonInputContainer()); mgr->ConnectOutput (pwg4spec, 0, mgr->GetCommonOutputContainer()); diff --git a/PWG4/macros/AddTaskPWG4HighPtQATPConly.C b/PWG4/macros/AddTaskPWG4HighPtQATPConly.C index 568fdb448e6..420c57d9293 100644 --- a/PWG4/macros/AddTaskPWG4HighPtQATPConly.C +++ b/PWG4/macros/AddTaskPWG4HighPtQATPConly.C @@ -60,7 +60,6 @@ AliPWG4HighPtQATPConly* AddTaskPWG4HighPtQATPConly()//) taskPWG4QA->SetCutsITS(trackCutsITS); taskPWG4QA->SelectTrigger(AliAnalysisHelperJetTasks::kMB1); - // E. Create ONLY the output containers for the data produced by the task. // Get and connect other common input/output containers via the manager as below //============================================================================== @@ -74,7 +73,7 @@ AliPWG4HighPtQATPConly* AddTaskPWG4HighPtQATPConly()//) AliAnalysisDataContainer *cout_hist1 = mgr->CreateContainer("qa_histsTPC", TList::Class(), AliAnalysisManager::kOutputContainer,outputfile); AliAnalysisDataContainer *cout_hist2 = mgr->CreateContainer("qa_histsITS", TList::Class(), AliAnalysisManager::kOutputContainer,outputfile); - + mgr->AddTask(taskPWG4QA); mgr->ConnectInput(taskPWG4QA,0,mgr->GetCommonInputContainer()); -- 2.39.3