]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - ANALYSIS/macros/AddTaskCentrality.C
Fixed grep syntax on OS X in the Analysis Plugin
[u/mrichter/AliRoot.git] / ANALYSIS / macros / AddTaskCentrality.C
index 7b2b227d18cd893af222fa2e8b3de2c9793fd51a..52d4452531456fef3f95e7759e95a1b279bba5c9 100644 (file)
@@ -1,4 +1,4 @@
-AliCentralitySelectionTask *AddTaskCentrality(Int_t passNumber = 2)
+AliCentralitySelectionTask *AddTaskCentrality(Bool_t fillHistos=kTRUE, Bool_t aod=kFALSE)
 {
 // Macro to connect a centrality selection task to an existing analysis manager.
   AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
@@ -13,22 +13,28 @@ AliCentralitySelectionTask *AddTaskCentrality(Int_t passNumber = 2)
     return NULL;
   }
   TString inputDataType = mgr->GetInputEventHandler()->GetDataType(); // can be "ESD" or "AOD"
-  if (inputDataType != "ESD") {
+  if (!aod && (inputDataType != "ESD")) {
     ::Error("AddTaskCentrality", "This task works only on ESD analysis");
     return NULL;
   }
+  //
+  AliInputEventHandler* hdl = (AliInputEventHandler*)mgr->GetInputEventHandler();
+  if (hdl) hdl->SetNeedField(); 
+  //
   AliCentralitySelectionTask *centralityTask = new AliCentralitySelectionTask("CentralitySelection");
-  centralityTask->SetPass(passNumber);
+  centralityTask->SetInput(inputDataType);
   centralityTask->SelectCollisionCandidates(AliVEvent::kAny);
   mgr->AddTask(centralityTask);
   
-  AliAnalysisDataContainer *cinput0 = mgr->GetCommonInputContainer();
-  AliAnalysisDataContainer *coutput1 = mgr->CreateContainer("CentralityStat",
-                TList::Class(), AliAnalysisManager::kOutputContainer,
-                "EventStat_temp.root");
-  
   mgr->ConnectInput(centralityTask, 0, mgr->GetCommonInputContainer());
-  mgr->ConnectOutput(centralityTask,1,coutput1);
+  if (fillHistos) {
+    centralityTask->SetFillHistos();
+    AliAnalysisDataContainer *coutput1 = mgr->CreateContainer("CentralityStat",
+                                                              TList::Class(), 
+                                                              AliAnalysisManager::kOutputContainer,
+                                                              "EventStat_temp.root");
+    mgr->ConnectOutput(centralityTask,1,coutput1);
+  }
 
   return centralityTask;
 }