ROOT logo
AliHMPIDPerformanceTask *AddTaskHMPIDPerformance(Bool_t useMC=kTRUE)
{
// Creates a HMPID task, configures it and adds it to the analysis manager.

   // Get the pointer to the existing analysis manager via the static access method.
   //==============================================================================
   AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
   if (!mgr) {
      ::Error("AddTaskHMPIDPerformance", "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("AddTaskHMPIDPerformance", "This task requires an input event handler");
      return NULL;
   }

   // Create the task and configure it.
   //===========================================================================

   AliHMPIDPerformanceTask *hmpTaskPerformance = new AliHMPIDPerformanceTask("HMPIDPerformanceTask");
   hmpTaskPerformance->SetDebugLevel(0);
   hmpTaskPerformance->SelectCollisionCandidates();
   hmpTaskPerformance->SetUseMC(useMC);
   mgr->AddTask(hmpTaskPerformance);

   AliAnalysisDataContainer *cout_hmpid= mgr->CreateContainer("HmpidOutput", TList::Class(),AliAnalysisManager::kOutputContainer,
                                           AliAnalysisManager::GetCommonFileName());
   AliAnalysisDataContainer *cout_tree = mgr->CreateContainer("HmpidTree", TTree::Class(),AliAnalysisManager::kOutputContainer,
                                           AliAnalysisManager::GetCommonFileName());

   // 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
   //==============================================================================
   mgr->ConnectInput  (hmpTaskPerformance, 0, mgr->GetCommonInputContainer());
   mgr->ConnectOutput (hmpTaskPerformance, 0, mgr->GetCommonOutputContainer());
   mgr->ConnectOutput (hmpTaskPerformance, 1, cout_hmpid);
   mgr->ConnectOutput (hmpTaskPerformance, 2, cout_tree);

   return hmpTaskPerformance;
}
 AddTaskHMPIDPerformance.C:1
 AddTaskHMPIDPerformance.C:2
 AddTaskHMPIDPerformance.C:3
 AddTaskHMPIDPerformance.C:4
 AddTaskHMPIDPerformance.C:5
 AddTaskHMPIDPerformance.C:6
 AddTaskHMPIDPerformance.C:7
 AddTaskHMPIDPerformance.C:8
 AddTaskHMPIDPerformance.C:9
 AddTaskHMPIDPerformance.C:10
 AddTaskHMPIDPerformance.C:11
 AddTaskHMPIDPerformance.C:12
 AddTaskHMPIDPerformance.C:13
 AddTaskHMPIDPerformance.C:14
 AddTaskHMPIDPerformance.C:15
 AddTaskHMPIDPerformance.C:16
 AddTaskHMPIDPerformance.C:17
 AddTaskHMPIDPerformance.C:18
 AddTaskHMPIDPerformance.C:19
 AddTaskHMPIDPerformance.C:20
 AddTaskHMPIDPerformance.C:21
 AddTaskHMPIDPerformance.C:22
 AddTaskHMPIDPerformance.C:23
 AddTaskHMPIDPerformance.C:24
 AddTaskHMPIDPerformance.C:25
 AddTaskHMPIDPerformance.C:26
 AddTaskHMPIDPerformance.C:27
 AddTaskHMPIDPerformance.C:28
 AddTaskHMPIDPerformance.C:29
 AddTaskHMPIDPerformance.C:30
 AddTaskHMPIDPerformance.C:31
 AddTaskHMPIDPerformance.C:32
 AddTaskHMPIDPerformance.C:33
 AddTaskHMPIDPerformance.C:34
 AddTaskHMPIDPerformance.C:35
 AddTaskHMPIDPerformance.C:36
 AddTaskHMPIDPerformance.C:37
 AddTaskHMPIDPerformance.C:38
 AddTaskHMPIDPerformance.C:39
 AddTaskHMPIDPerformance.C:40
 AddTaskHMPIDPerformance.C:41
 AddTaskHMPIDPerformance.C:42
 AddTaskHMPIDPerformance.C:43
 AddTaskHMPIDPerformance.C:44