ROOT logo
AliEmcalPhysicsSelectionTask* AddTaskEmcalPhysicsSelection(
  Bool_t exFOnly, 
  Bool_t wHistos   = kTRUE,
  UInt_t triggers  = 0,
  Double_t minE    = -1,
  Double_t minPt   = -1,
  Double_t vz      = -1,
  Bool_t vzdiff    = kFALSE, 
  Double_t cmin    = -1,
  Double_t cmax    = -1,
  Double_t minCellTrackScale = -1,
  Double_t maxCellTrackScale = -1,
  Bool_t byPassPhysSelTask = kFALSE,
  Bool_t skip1024Bug = kFALSE
)
{
  if(byPassPhysSelTask)
    return 0;

  // Add EMCAL physics selection task.

  AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
  if (!mgr) {
    ::Error("AddTaskEmcalPhysicsSelection", "No analysis manager found.");
    return 0;
  }

  if (!mgr->GetInputEventHandler()) {
    ::Error("AddTaskEmcalPhysicsSelection", "This task requires an input event handler");
    return NULL;
  }

  Bool_t isMC = (mgr->GetMCtruthEventHandler()) ? kTRUE:kFALSE; 
  AliEmcalPhysicsSelectionTask *pseltask = new AliEmcalPhysicsSelectionTask("EmcalPSel");
  pseltask->SetDoWriteHistos(wHistos);
  AliEmcalPhysicsSelection *physSel = static_cast<AliEmcalPhysicsSelection*>(pseltask->GetPhysicsSelection());
  if (physSel) {
    physSel->SetSkipFastOnly(exFOnly);
    if (isMC)      
      physSel->SetAnalyzeMC();
    physSel->SetClusMinE(minE);
    physSel->SetTrackMinPt(minPt);
    physSel->SetTriggers(triggers);
    physSel->SetCentRange(cmin,cmax);
    physSel->SetZVertex(vz);
    physSel->SetCheckZvertexDiff(vzdiff);
    physSel->SetCellTrackScale(minCellTrackScale,maxCellTrackScale);
    physSel->SetSkip1024Bug(skip1024Bug);
  } else {
    ::Error("AddTaskEmcalPhysicsSelection", "No AliEmcalPhysicsSelection object found.");
  }

  mgr->AddTask(pseltask);

  AliAnalysisDataContainer *cinput = mgr->GetCommonInputContainer();
  AliAnalysisDataContainer *coutput = mgr->CreateContainer("cstatsout",
                TList::Class(),
                AliAnalysisManager::kOutputContainer,
                "EventStat_temp.root");
		
  mgr->ConnectInput(pseltask,  0, cinput);
  mgr->ConnectOutput(pseltask, 1, coutput);

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