ROOT logo
AliAnalysisTask *AddTaskHFEemcQA(Bool_t UseTender=kTRUE, Bool_t FillElecSparse=kFALSE){
  //get the current analysis manager
  AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
  if (!mgr) {
    Error("AddTaskHFE", "No analysis manager found.");
    return NULL;
  }
  if (!mgr->GetInputEventHandler()) {
    ::Error("AddTaskHFE", "This task requires an input event handler");
    return NULL;
  }  
  TString type = mgr->GetInputEventHandler()->GetDataType(); // can be "ESD" or "AOD"
  
 Bool_t MCthere=kFALSE;
  AliMCEventHandler *mcH = dynamic_cast<AliMCEventHandler*>(mgr->GetMCtruthEventHandler());
  if(!mcH){
    MCthere=kFALSE;
  }else{
    MCthere=kTRUE;
  }
  
  char calib[100];
  if(UseTender)
     {
      sprintf(calib,"wTender");
     }
  else
     {
      sprintf(calib,"woTender");
     }

  // +++ EMCal MB
  AliAnalysisTaskHFEemcQA *hfecalqa = new AliAnalysisTaskHFEemcQA("emcqa");
  mgr->AddTask(hfecalqa);
  hfecalqa->SelectCollisionCandidates(AliVEvent::kINT8);
  hfecalqa->SetElecIDsparse(FillElecSparse);
  hfecalqa->SetTenderSwitch(UseTender);

  TString containerName = mgr->GetCommonFileName();
  containerName += ":PWGHF_hfeHFEemcQAINT8";
  AliAnalysisDataContainer *cinput  = mgr->GetCommonInputContainer();
  AliAnalysisDataContainer *coutput1 = mgr->CreateContainer(Form("HFEemcQAINT8_%s",calib), TList::Class(),AliAnalysisManager::kOutputContainer, containerName.Data());
  mgr->ConnectInput(hfecalqa, 0, cinput);
  mgr->ConnectOutput(hfecalqa, 1, coutput1); 

  AliAnalysisTaskHFEemcQA *hfecalqa7 = new AliAnalysisTaskHFEemcQA("emcqa");
  mgr->AddTask(hfecalqa7);
  hfecalqa7->SelectCollisionCandidates(AliVEvent::kINT7);
  hfecalqa7->SetElecIDsparse(FillElecSparse);
  hfecalqa7->SetTenderSwitch(UseTender);

  TString containerName7 = mgr->GetCommonFileName();
  containerName7 += ":PWGHF_hfeHFEemcQAINT7";
  AliAnalysisDataContainer *cinput  = mgr->GetCommonInputContainer();
  AliAnalysisDataContainer *coutput1 = mgr->CreateContainer(Form("HFEemcQAINT7_%s",calib), TList::Class(),AliAnalysisManager::kOutputContainer, containerName7.Data());
  mgr->ConnectInput(hfecalqa7, 0, cinput);
  mgr->ConnectOutput(hfecalqa7, 1, coutput1); 

  // EMCal EGA
  AliAnalysisTaskHFEemcQA *hfecalqaTrig0 = new AliAnalysisTaskHFEemcQA("emcqa");
  mgr->AddTask(hfecalqaTrig0);
  hfecalqaTrig0->SelectCollisionCandidates(AliVEvent::kEMCEGA);
  hfecalqaTrig0->SetElecIDsparse(FillElecSparse);
  hfecalqaTrig0->SetTenderSwitch(UseTender);

  TString containerName1 = mgr->GetCommonFileName();
  containerName1 += ":PWGHF_hfeHFEemcQATrigGA";
  AliAnalysisDataContainer *cinput  = mgr->GetCommonInputContainer();
  AliAnalysisDataContainer *coutput1 = mgr->CreateContainer(Form("HFEemcQATrigGA_%s",calib), TList::Class(),AliAnalysisManager::kOutputContainer, containerName1.Data());
  mgr->ConnectInput(hfecalqaTrig0, 0, cinput);
  mgr->ConnectOutput(hfecalqaTrig0, 1, coutput1); 

 
  // EMCal EJE
  AliAnalysisTaskHFEemcQA *hfecalqaTrig1 = new AliAnalysisTaskHFEemcQA("emcqa");
  mgr->AddTask(hfecalqaTrig1);
  hfecalqaTrig1->SelectCollisionCandidates(AliVEvent::kEMCEJE);
  hfecalqaTrig1->SetElecIDsparse(FillElecSparse);
  hfecalqaTrig1->SetTenderSwitch(UseTender);

  TString containerName2 = mgr->GetCommonFileName();
  containerName2 += ":PWGHF_hfeHFEemcQATrigJE";
  AliAnalysisDataContainer *cinput  = mgr->GetCommonInputContainer();
  AliAnalysisDataContainer *coutput1 = mgr->CreateContainer(Form("HFEemcQATrigJE_%s",calib), TList::Class(),AliAnalysisManager::kOutputContainer, containerName2.Data());
  mgr->ConnectInput(hfecalqaTrig1, 0, cinput);
  mgr->ConnectOutput(hfecalqaTrig1, 1, coutput1); 

  //return hfecalqa;
  return NULL;
}
 AddTaskHFEemcQA.C:1
 AddTaskHFEemcQA.C:2
 AddTaskHFEemcQA.C:3
 AddTaskHFEemcQA.C:4
 AddTaskHFEemcQA.C:5
 AddTaskHFEemcQA.C:6
 AddTaskHFEemcQA.C:7
 AddTaskHFEemcQA.C:8
 AddTaskHFEemcQA.C:9
 AddTaskHFEemcQA.C:10
 AddTaskHFEemcQA.C:11
 AddTaskHFEemcQA.C:12
 AddTaskHFEemcQA.C:13
 AddTaskHFEemcQA.C:14
 AddTaskHFEemcQA.C:15
 AddTaskHFEemcQA.C:16
 AddTaskHFEemcQA.C:17
 AddTaskHFEemcQA.C:18
 AddTaskHFEemcQA.C:19
 AddTaskHFEemcQA.C:20
 AddTaskHFEemcQA.C:21
 AddTaskHFEemcQA.C:22
 AddTaskHFEemcQA.C:23
 AddTaskHFEemcQA.C:24
 AddTaskHFEemcQA.C:25
 AddTaskHFEemcQA.C:26
 AddTaskHFEemcQA.C:27
 AddTaskHFEemcQA.C:28
 AddTaskHFEemcQA.C:29
 AddTaskHFEemcQA.C:30
 AddTaskHFEemcQA.C:31
 AddTaskHFEemcQA.C:32
 AddTaskHFEemcQA.C:33
 AddTaskHFEemcQA.C:34
 AddTaskHFEemcQA.C:35
 AddTaskHFEemcQA.C:36
 AddTaskHFEemcQA.C:37
 AddTaskHFEemcQA.C:38
 AddTaskHFEemcQA.C:39
 AddTaskHFEemcQA.C:40
 AddTaskHFEemcQA.C:41
 AddTaskHFEemcQA.C:42
 AddTaskHFEemcQA.C:43
 AddTaskHFEemcQA.C:44
 AddTaskHFEemcQA.C:45
 AddTaskHFEemcQA.C:46
 AddTaskHFEemcQA.C:47
 AddTaskHFEemcQA.C:48
 AddTaskHFEemcQA.C:49
 AddTaskHFEemcQA.C:50
 AddTaskHFEemcQA.C:51
 AddTaskHFEemcQA.C:52
 AddTaskHFEemcQA.C:53
 AddTaskHFEemcQA.C:54
 AddTaskHFEemcQA.C:55
 AddTaskHFEemcQA.C:56
 AddTaskHFEemcQA.C:57
 AddTaskHFEemcQA.C:58
 AddTaskHFEemcQA.C:59
 AddTaskHFEemcQA.C:60
 AddTaskHFEemcQA.C:61
 AddTaskHFEemcQA.C:62
 AddTaskHFEemcQA.C:63
 AddTaskHFEemcQA.C:64
 AddTaskHFEemcQA.C:65
 AddTaskHFEemcQA.C:66
 AddTaskHFEemcQA.C:67
 AddTaskHFEemcQA.C:68
 AddTaskHFEemcQA.C:69
 AddTaskHFEemcQA.C:70
 AddTaskHFEemcQA.C:71
 AddTaskHFEemcQA.C:72
 AddTaskHFEemcQA.C:73
 AddTaskHFEemcQA.C:74
 AddTaskHFEemcQA.C:75
 AddTaskHFEemcQA.C:76
 AddTaskHFEemcQA.C:77
 AddTaskHFEemcQA.C:78
 AddTaskHFEemcQA.C:79
 AddTaskHFEemcQA.C:80
 AddTaskHFEemcQA.C:81
 AddTaskHFEemcQA.C:82
 AddTaskHFEemcQA.C:83
 AddTaskHFEemcQA.C:84
 AddTaskHFEemcQA.C:85
 AddTaskHFEemcQA.C:86
 AddTaskHFEemcQA.C:87
 AddTaskHFEemcQA.C:88
 AddTaskHFEemcQA.C:89
 AddTaskHFEemcQA.C:90
 AddTaskHFEemcQA.C:91