]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGLF/SPECTRA/ParticleEfficiency/AddAnalysisTaskParticleEfficiency.C
Bug fix , problem was with pile-up tagging
[u/mrichter/AliRoot.git] / PWGLF / SPECTRA / ParticleEfficiency / AddAnalysisTaskParticleEfficiency.C
CommitLineData
52961962 1AliAnalysisTaskParticleEfficiency *
2AddAnalysisTaskParticleEfficiency(const Char_t *partName)
3{
4
5 /* check analysis manager */
6 AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
7 if (!mgr) {
8 Error("AddAnalysisTaskParticleEfficiency", "cannot get analysis manager");
9 return NULL;
10 }
11
12 /* check input event handler */
13 if (!mgr->GetInputEventHandler()) {
14 Error("AddAnalysisTaskParticleEfficiency", "cannot get input event handler");
15 return NULL;
16 }
17
18 /* check input data type */
19 TString str = mgr->GetInputEventHandler()->GetDataType();
20 if (str.CompareTo("ESD")) {
21 Error("AddAnalysisTaskParticleEfficiency", "input data type is not \"ESD\"");
22 return NULL;
23 }
24
25 /* check MC truth event handler */
26 if (!mgr->GetMCtruthEventHandler()) {
27 Error("AddAnalysisTaskParticleEfficiency", "cannot get MC truth event handler");
28 return NULL;
29 }
30
31 /* get common input data container */
32 AliAnalysisDataContainer *inputc = mgr->GetCommonInputContainer();
33 if (!inputc) {
34 Error("AddAnalysisTaskParticleEfficiency", "cannot get common input container");
35 return NULL;
36 }
37
38/* create output data container */
39 AliAnalysisDataContainer *outputc1 = mgr->CreateContainer(partName, TList::Class(), AliAnalysisManager::kOutputContainer, "ParticleEfficiency.root");
40 if (!outputc1) {
41 Error("", "cannot create output container \"Histos\"");
42 return NULL;
43 }
44
45 /* create task and connect input/output */
46 AliAnalysisTaskParticleEfficiency *task = new AliAnalysisTaskParticleEfficiency(partName);
47 mgr->ConnectInput(task, 0, inputc);
48 mgr->ConnectOutput(task, 1, outputc1);
49
50 /* return task */
51 return task;
52
53}