]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGHF/hfe/macros/AddTaskHFEemcQA.C
New MFT analysis tools
[u/mrichter/AliRoot.git] / PWGHF / hfe / macros / AddTaskHFEemcQA.C
1 AliAnalysisTask *AddTaskHFEemcQA(Bool_t UseTender=kTRUE, Bool_t FillElecSparse=kFALSE){
2   //get the current analysis manager
3   AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
4   if (!mgr) {
5     Error("AddTaskHFE", "No analysis manager found.");
6     return NULL;
7   }
8   if (!mgr->GetInputEventHandler()) {
9     ::Error("AddTaskHFE", "This task requires an input event handler");
10     return NULL;
11   }  
12   TString type = mgr->GetInputEventHandler()->GetDataType(); // can be "ESD" or "AOD"
13   
14  Bool_t MCthere=kFALSE;
15   AliMCEventHandler *mcH = dynamic_cast<AliMCEventHandler*>(mgr->GetMCtruthEventHandler());
16   if(!mcH){
17     MCthere=kFALSE;
18   }else{
19     MCthere=kTRUE;
20   }
21   
22   char calib[100];
23   if(UseTender)
24      {
25       sprintf(calib,"wTender");
26      }
27   else
28      {
29       sprintf(calib,"woTender");
30      }
31
32   // +++ EMCal MB
33   AliAnalysisTaskHFEemcQA *hfecalqa = new AliAnalysisTaskHFEemcQA("emcqa");
34   mgr->AddTask(hfecalqa);
35   hfecalqa->SelectCollisionCandidates(AliVEvent::kINT8);
36   hfecalqa->SetElecIDsparse(FillElecSparse);
37   hfecalqa->SetTenderSwitch(UseTender);
38
39   TString containerName = mgr->GetCommonFileName();
40   containerName += ":PWGHF_hfeHFEemcQAINT8";
41   AliAnalysisDataContainer *cinput  = mgr->GetCommonInputContainer();
42   AliAnalysisDataContainer *coutput1 = mgr->CreateContainer(Form("HFEemcQAINT8_%s",calib), TList::Class(),AliAnalysisManager::kOutputContainer, containerName.Data());
43   mgr->ConnectInput(hfecalqa, 0, cinput);
44   mgr->ConnectOutput(hfecalqa, 1, coutput1); 
45
46   AliAnalysisTaskHFEemcQA *hfecalqa7 = new AliAnalysisTaskHFEemcQA("emcqa");
47   mgr->AddTask(hfecalqa7);
48   hfecalqa7->SelectCollisionCandidates(AliVEvent::kINT7);
49   hfecalqa7->SetElecIDsparse(FillElecSparse);
50   hfecalqa7->SetTenderSwitch(UseTender);
51
52   TString containerName7 = mgr->GetCommonFileName();
53   containerName7 += ":PWGHF_hfeHFEemcQAINT7";
54   AliAnalysisDataContainer *cinput  = mgr->GetCommonInputContainer();
55   AliAnalysisDataContainer *coutput1 = mgr->CreateContainer(Form("HFEemcQAINT7_%s",calib), TList::Class(),AliAnalysisManager::kOutputContainer, containerName7.Data());
56   mgr->ConnectInput(hfecalqa7, 0, cinput);
57   mgr->ConnectOutput(hfecalqa7, 1, coutput1); 
58
59   // EMCal EGA
60   AliAnalysisTaskHFEemcQA *hfecalqaTrig0 = new AliAnalysisTaskHFEemcQA("emcqa");
61   mgr->AddTask(hfecalqaTrig0);
62   hfecalqaTrig0->SelectCollisionCandidates(AliVEvent::kEMCEGA);
63   hfecalqaTrig0->SetElecIDsparse(FillElecSparse);
64   hfecalqaTrig0->SetTenderSwitch(UseTender);
65
66   TString containerName1 = mgr->GetCommonFileName();
67   containerName1 += ":PWGHF_hfeHFEemcQATrigGA";
68   AliAnalysisDataContainer *cinput  = mgr->GetCommonInputContainer();
69   AliAnalysisDataContainer *coutput1 = mgr->CreateContainer(Form("HFEemcQATrigGA_%s",calib), TList::Class(),AliAnalysisManager::kOutputContainer, containerName1.Data());
70   mgr->ConnectInput(hfecalqaTrig0, 0, cinput);
71   mgr->ConnectOutput(hfecalqaTrig0, 1, coutput1); 
72
73  
74   // EMCal EJE
75   AliAnalysisTaskHFEemcQA *hfecalqaTrig1 = new AliAnalysisTaskHFEemcQA("emcqa");
76   mgr->AddTask(hfecalqaTrig1);
77   hfecalqaTrig1->SelectCollisionCandidates(AliVEvent::kEMCEJE);
78   hfecalqaTrig1->SetElecIDsparse(FillElecSparse);
79   hfecalqaTrig1->SetTenderSwitch(UseTender);
80
81   TString containerName2 = mgr->GetCommonFileName();
82   containerName2 += ":PWGHF_hfeHFEemcQATrigJE";
83   AliAnalysisDataContainer *cinput  = mgr->GetCommonInputContainer();
84   AliAnalysisDataContainer *coutput1 = mgr->CreateContainer(Form("HFEemcQATrigJE_%s",calib), TList::Class(),AliAnalysisManager::kOutputContainer, containerName2.Data());
85   mgr->ConnectInput(hfecalqaTrig1, 0, cinput);
86   mgr->ConnectOutput(hfecalqaTrig1, 1, coutput1); 
87
88   //return hfecalqa;
89   return NULL;
90 }