]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGJE/EMCALJetTasks/macros/AddTaskEmcalTriggerInfoQA.C
Merge branch 'feature-movesplit'
[u/mrichter/AliRoot.git] / PWGJE / EMCALJetTasks / macros / AddTaskEmcalTriggerInfoQA.C
CommitLineData
cf9ee6ed 1// $Id$
2
3AliAnalysisTaskEmcalTriggerInfoQA* AddTaskEmcalTriggerInfoQA(
4 const char *triggersName = "EmcalTriggers",
5 const char *triggerSetupName = "EmcalTriggerSetup",
6 const char *cellsName = 0,
7 const char *taskName = "AliEmcalTriggerInfoQA"
8)
9{
10 // Get the pointer to the existing analysis manager via the static access method.
11 //==============================================================================
12 AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
13 if (!mgr)
14 {
15 ::Error("AddTaskEmcalTriggerInfoQA", "No analysis manager to connect to.");
16 return NULL;
17 }
18
19 // Check the analysis type using the event handlers connected to the analysis manager.
20 //==============================================================================
21 AliVEventHandler *evhand = mgr->GetInputEventHandler();
22 if (!evhand) {
23 ::Error("AddTaskEmcalTriggerInfoQA", "This task requires an input event handler");
24 return NULL;
25 }
26
27 if (!cellsName) {
28 cellsName = new char[100];
29
30 if (evhand->InheritsFrom("AliESDInputHandler")) {
31 strcpy(cellsName,"EMCALCells");
32 ::Info("AddTaskEmcalTriggerInfoQA", Form( "ESD analysis, cellsName = \"%s\"", cellsName ));
33 }
34 else {
35 strcpy(cellsName,"emcalCells");
36 ::Info("AddTaskEmcalTriggerInfoQA", Form( "AOD analysis, cellsName = \"%s\"", cellsName ));
37 }
38 }
39
40 //-------------------------------------------------------
41 // Init the task and do settings
42 //-------------------------------------------------------
43
44 AliAnalysisTaskEmcalTriggerInfoQA *eTask = new AliAnalysisTaskEmcalTriggerInfoQA(taskName);
45 eTask->SetCaloTriggerPatchInfoName(triggersName);
46 eTask->SetCaloTriggerSetupInfoName(triggerSetupName);
47 eTask->SetCaloCellsName(cellsName);
48 eTask->SetAnaType(AliAnalysisTaskEmcal::kEMCAL);
49
50 //-------------------------------------------------------
51 // Final settings, pass to manager and set the containers
52 //-------------------------------------------------------
53 mgr->AddTask(eTask);
54
55 TString listName = Form("ListEmcalTriggerInfoQA" );
56 TString fileName = Form("%s:EmcalTriggerInfoQA", AliAnalysisManager::GetCommonFileName());
57
58 // Create containers for input/output
59 AliAnalysisDataContainer *cinput1 = mgr->GetCommonInputContainer();
60 mgr->ConnectInput (eTask, 0, cinput1 );
61
62 AliAnalysisDataContainer *coutput = mgr->CreateContainer( listName, TList::Class(), AliAnalysisManager::kOutputContainer, fileName);
63 mgr->ConnectOutput( eTask, 1, coutput);
64
65 return eTask;
66}