]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG1/TRD/macros/AddTRDefficiency.C
explicitly (Markus)
[u/mrichter/AliRoot.git] / PWG1 / TRD / macros / AddTRDefficiency.C
CommitLineData
1ee39b3a 1#if ! defined (__CINT__) || defined (__MAKECINT__)
2#include "AliAnalysisManager.h"
3#include "AliAnalysisDataContainer.h"
d4f4bb29 4#include "PWG1/TRD/macros/AliTRDperformanceTrain.h"
5#include "PWG1/TRD/AliTRDefficiency.h"
6#include "PWG1/TRD/AliTRDefficiencyMC.h"
7#include "PWG1/TRD/AliTRDmultiplicity.h"
1ee39b3a 8#endif
9
d4f4bb29 10#include "PWG1/TRD/macros/helper.C"
1ee39b3a 11void AddTRDefficiency(AliAnalysisManager *mgr, Char_t *trd, AliAnalysisDataContainer **ci/*, AliAnalysisDataContainer **co*/)
12{
13 Int_t map = ParseOptions(trd);
14 if(!(TSTBIT(map, kEfficiency))) return;
3d2a3dff 15 printf("AddTRDefficiency <- [0]=\"%s\" [1]=\"%s\" [2]=\"%s\"\n", ci[0]->GetName(), ci[1]->GetName(), ci[2]->GetName());
1ee39b3a 16
705f8b0a 17 AliTRDrecoTask *eff(NULL);
f2e89a4c 18 mgr->AddTask(eff = new AliTRDefficiency((char*)"TRDefficiency"));
1ee39b3a 19 eff->SetDebugLevel(0);
705f8b0a 20 //AliLog::SetClassDebugLevel("AliTRDefficiency", 5);
3d83da78 21 mgr->ConnectInput(eff, 0, mgr->GetCommonInputContainer());
705f8b0a 22 mgr->ConnectInput(eff, 1, ci[0]);
23 mgr->ConnectOutput(eff,1, mgr->CreateContainer(eff->GetName(), TObjArray::Class(), AliAnalysisManager::kOutputContainer, "TRD.Performance.root"));
1ee39b3a 24
25
26 // TRD combined tracking efficiency
705f8b0a 27 if(mgr->GetMCtruthEventHandler() && TSTBIT(map, kEfficiencyMC)) {
28 mgr->AddTask(eff = new AliTRDefficiencyMC((char*)"TRDefficiencyMC"));
29 eff->SetDebugLevel(0);
30 //AliLog::SetClassDebugLevel("AliTRDefficiencyMC", 5);
1ee39b3a 31
32 // Create containers for input/output
705f8b0a 33 mgr->ConnectInput(eff, 0, mgr->GetCommonInputContainer());
34 mgr->ConnectInput(eff, 1, ci[0]);
35 mgr->ConnectOutput(eff, 1, mgr->CreateContainer(eff->GetName(), TObjArray::Class(), AliAnalysisManager::kOutputContainer, Form("TRD.Performance.root", eff->GetName())));
1ee39b3a 36 }
37
38 // TRD single track selection
39 if(!(TSTBIT(map, kMultiplicity))) return;
40
705f8b0a 41 mgr->AddTask(eff = new AliTRDmultiplicity((char*)"TRDmultiplicity"));
42 eff->SetDebugLevel(0);
43 //AliLog::SetClassDebugLevel("AliTRDmultiplicity", 5);
44 mgr->ConnectInput(eff, 0, mgr->GetCommonInputContainer());
45 mgr->ConnectInput(eff, 1, ci[0]);
46 mgr->ConnectOutput(eff, 1, mgr->CreateContainer(eff->GetName(), TObjArray::Class(), AliAnalysisManager::kOutputContainer, Form("TRD.Calib%s.root", eff->GetName())));
1ee39b3a 47}
48