3 AliEmcalTriggerMaker* AddTaskEmcalTriggerMaker(
4 const char *triggersOutName = "EmcalTriggers",
5 const char *triggerSetupOutName = "EmcalTriggerSetup",
6 const char *cellsName = 0,
7 const char *triggersName = 0,
8 const char *taskName = "AliEmcalTriggerMaker"
11 // Get the pointer to the existing analysis manager via the static access method.
12 //==============================================================================
13 AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
16 ::Error("AddTaskEmcalTriggerMaker", "No analysis manager to connect to.");
20 // Check the analysis type using the event handlers connected to the analysis manager.
21 //==============================================================================
22 AliVEventHandler *evhand = mgr->GetInputEventHandler();
24 ::Error("AddTaskEmcalTriggerMaker", "This task requires an input event handler");
29 triggersName = new char[100];
31 if (evhand->InheritsFrom("AliESDInputHandler")) {
32 strcpy(triggersName,"EMCALTrigger");
33 ::Info("AddTaskEmcalTriggerMaker", Form( "ESD analysis, triggersName = \"%s\"", triggersName ));
36 strcpy(triggersName,"emcalTrigger");
37 ::Info("AddTaskEmcalTriggerMaker", Form( "AOD analysis, triggersName = \"%s\"", triggersName ));
41 cellsName = new char[100];
43 if (evhand->InheritsFrom("AliESDInputHandler")) {
44 strcpy(cellsName,"EMCALCells");
45 ::Info("AddTaskEmcalTriggerMaker", Form( "ESD analysis, cellsName = \"%s\"", cellsName ));
48 strcpy(cellsName,"emcalCells");
49 ::Info("AddTaskEmcalTriggerMaker", Form( "AOD analysis, cellsName = \"%s\"", cellsName ));
53 //-------------------------------------------------------
54 // Init the task and do settings
55 //-------------------------------------------------------
57 AliEmcalTriggerMaker *eTask = new AliEmcalTriggerMaker(taskName);
58 eTask->SetCaloTriggersName(triggersName);
59 eTask->SetCaloTriggersOutName(triggersOutName);
60 eTask->SetCaloTriggerSetupOutName(triggerSetupOutName);
61 eTask->SetCaloCellsName(cellsName);
62 eTask->SetAnaType(AliAnalysisTaskEmcal::kEMCAL);
64 //-------------------------------------------------------
65 // Final settings, pass to manager and set the containers
66 //-------------------------------------------------------
69 // Create containers for input/output
70 AliAnalysisDataContainer *cinput1 = mgr->GetCommonInputContainer();
71 mgr->ConnectInput (eTask, 0, cinput1 );