ROOT logo
// $Id$

AliAnalysisTaskEmcalTriggerInfoQA* AddTaskEmcalTriggerInfoQA(
  const char *triggersName     = "EmcalTriggers",
  const char *triggerSetupName = "EmcalTriggerSetup",
  const char *cellsName           = 0,
  const char *taskName            = "AliEmcalTriggerInfoQA"
)
{  
  // Get the pointer to the existing analysis manager via the static access method.
  //==============================================================================
  AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
  if (!mgr)
  {
    ::Error("AddTaskEmcalTriggerInfoQA", "No analysis manager to connect to.");
    return NULL;
  }  
  
  // Check the analysis type using the event handlers connected to the analysis manager.
  //==============================================================================
  AliVEventHandler *evhand = mgr->GetInputEventHandler();
  if (!evhand) {
    ::Error("AddTaskEmcalTriggerInfoQA", "This task requires an input event handler");
    return NULL;
  }

  if (!cellsName) {
    cellsName = new char[100];

    if (evhand->InheritsFrom("AliESDInputHandler")) {
      strcpy(cellsName,"EMCALCells");
      ::Info("AddTaskEmcalTriggerInfoQA", Form( "ESD analysis, cellsName = \"%s\"", cellsName ));
    }
    else {
      strcpy(cellsName,"emcalCells");
      ::Info("AddTaskEmcalTriggerInfoQA", Form( "AOD analysis, cellsName = \"%s\"", cellsName ));
    }
  }
 
   //-------------------------------------------------------
  // Init the task and do settings
  //-------------------------------------------------------

  AliAnalysisTaskEmcalTriggerInfoQA *eTask = new AliAnalysisTaskEmcalTriggerInfoQA(taskName);
  eTask->SetCaloTriggerPatchInfoName(triggersName);
  eTask->SetCaloTriggerSetupInfoName(triggerSetupName);
  eTask->SetCaloCellsName(cellsName);
  eTask->SetAnaType(AliAnalysisTaskEmcal::kEMCAL);

  //-------------------------------------------------------
  // Final settings, pass to manager and set the containers
  //-------------------------------------------------------
  mgr->AddTask(eTask);
  
	TString listName = Form("ListEmcalTriggerInfoQA" );
	TString fileName = Form("%s:EmcalTriggerInfoQA", AliAnalysisManager::GetCommonFileName());

  // Create containers for input/output
  AliAnalysisDataContainer *cinput1  = mgr->GetCommonInputContainer();
  mgr->ConnectInput  (eTask, 0,  cinput1 );
  
 	AliAnalysisDataContainer *coutput = mgr->CreateContainer( listName, TList::Class(), AliAnalysisManager::kOutputContainer, fileName);
	mgr->ConnectOutput( eTask, 1, coutput);

 return eTask;
}
 AddTaskEmcalTriggerInfoQA.C:1
 AddTaskEmcalTriggerInfoQA.C:2
 AddTaskEmcalTriggerInfoQA.C:3
 AddTaskEmcalTriggerInfoQA.C:4
 AddTaskEmcalTriggerInfoQA.C:5
 AddTaskEmcalTriggerInfoQA.C:6
 AddTaskEmcalTriggerInfoQA.C:7
 AddTaskEmcalTriggerInfoQA.C:8
 AddTaskEmcalTriggerInfoQA.C:9
 AddTaskEmcalTriggerInfoQA.C:10
 AddTaskEmcalTriggerInfoQA.C:11
 AddTaskEmcalTriggerInfoQA.C:12
 AddTaskEmcalTriggerInfoQA.C:13
 AddTaskEmcalTriggerInfoQA.C:14
 AddTaskEmcalTriggerInfoQA.C:15
 AddTaskEmcalTriggerInfoQA.C:16
 AddTaskEmcalTriggerInfoQA.C:17
 AddTaskEmcalTriggerInfoQA.C:18
 AddTaskEmcalTriggerInfoQA.C:19
 AddTaskEmcalTriggerInfoQA.C:20
 AddTaskEmcalTriggerInfoQA.C:21
 AddTaskEmcalTriggerInfoQA.C:22
 AddTaskEmcalTriggerInfoQA.C:23
 AddTaskEmcalTriggerInfoQA.C:24
 AddTaskEmcalTriggerInfoQA.C:25
 AddTaskEmcalTriggerInfoQA.C:26
 AddTaskEmcalTriggerInfoQA.C:27
 AddTaskEmcalTriggerInfoQA.C:28
 AddTaskEmcalTriggerInfoQA.C:29
 AddTaskEmcalTriggerInfoQA.C:30
 AddTaskEmcalTriggerInfoQA.C:31
 AddTaskEmcalTriggerInfoQA.C:32
 AddTaskEmcalTriggerInfoQA.C:33
 AddTaskEmcalTriggerInfoQA.C:34
 AddTaskEmcalTriggerInfoQA.C:35
 AddTaskEmcalTriggerInfoQA.C:36
 AddTaskEmcalTriggerInfoQA.C:37
 AddTaskEmcalTriggerInfoQA.C:38
 AddTaskEmcalTriggerInfoQA.C:39
 AddTaskEmcalTriggerInfoQA.C:40
 AddTaskEmcalTriggerInfoQA.C:41
 AddTaskEmcalTriggerInfoQA.C:42
 AddTaskEmcalTriggerInfoQA.C:43
 AddTaskEmcalTriggerInfoQA.C:44
 AddTaskEmcalTriggerInfoQA.C:45
 AddTaskEmcalTriggerInfoQA.C:46
 AddTaskEmcalTriggerInfoQA.C:47
 AddTaskEmcalTriggerInfoQA.C:48
 AddTaskEmcalTriggerInfoQA.C:49
 AddTaskEmcalTriggerInfoQA.C:50
 AddTaskEmcalTriggerInfoQA.C:51
 AddTaskEmcalTriggerInfoQA.C:52
 AddTaskEmcalTriggerInfoQA.C:53
 AddTaskEmcalTriggerInfoQA.C:54
 AddTaskEmcalTriggerInfoQA.C:55
 AddTaskEmcalTriggerInfoQA.C:56
 AddTaskEmcalTriggerInfoQA.C:57
 AddTaskEmcalTriggerInfoQA.C:58
 AddTaskEmcalTriggerInfoQA.C:59
 AddTaskEmcalTriggerInfoQA.C:60
 AddTaskEmcalTriggerInfoQA.C:61
 AddTaskEmcalTriggerInfoQA.C:62
 AddTaskEmcalTriggerInfoQA.C:63
 AddTaskEmcalTriggerInfoQA.C:64
 AddTaskEmcalTriggerInfoQA.C:65
 AddTaskEmcalTriggerInfoQA.C:66
 AddTaskEmcalTriggerInfoQA.C:67