]>
Commit | Line | Data |
---|---|---|
1ee39b3a | 1 | #if ! defined (__CINT__) || defined (__MAKECINT__) |
a7fa310f | 2 | #include "TError.h" |
1ee39b3a | 3 | #include "AliAnalysisManager.h" |
4 | #include "AliAnalysisDataContainer.h" | |
99535225 | 5 | #include "PWG1/TRD/AliTRDpwg1Helper.h" |
d4f4bb29 | 6 | #include "PWG1/TRD/AliTRDefficiency.h" |
7 | #include "PWG1/TRD/AliTRDefficiencyMC.h" | |
8 | #include "PWG1/TRD/AliTRDmultiplicity.h" | |
1ee39b3a | 9 | #endif |
10 | ||
a7fa310f | 11 | void AddTRDefficiency(AliAnalysisManager *mgr, Int_t map, AliAnalysisDataContainer **ci/*, AliAnalysisDataContainer **co*/) |
1ee39b3a | 12 | { |
94b94be0 | 13 | Info("AddTRDefficiency", Form("[0]=\"%s\" [1]=\"%s\" [2]=\"%s\" [3]=\"%s\"", ci[0]->GetName(), ci[1]->GetName(), ci[2]->GetName(), ci[3]->GetName())); |
1ee39b3a | 14 | |
94b94be0 | 15 | AliAnalysisDataContainer *evInfoContainer = ci[3]; |
705f8b0a | 16 | AliTRDrecoTask *eff(NULL); |
f2e89a4c | 17 | mgr->AddTask(eff = new AliTRDefficiency((char*)"TRDefficiency")); |
1ee39b3a | 18 | eff->SetDebugLevel(0); |
705f8b0a | 19 | //AliLog::SetClassDebugLevel("AliTRDefficiency", 5); |
94b94be0 | 20 | Int_t trackStatus = 0; // barrel tracks |
21 | // = 1; // kink tracks | |
22 | // = 2; // SA tracks | |
23 | mgr->ConnectInput(eff, 0, mgr->GetCommonInputContainer()); // connect main (ESD) container | |
24 | mgr->ConnectInput(eff, 1, ci[trackStatus]); // conect track info container | |
25 | mgr->ConnectInput(eff, 2, evInfoContainer); // conect event info container | |
997f86cb | 26 | mgr->ConnectOutput(eff,1, mgr->CreateContainer(eff->GetName(), TObjArray::Class(), AliAnalysisManager::kOutputContainer, Form("%s:TRD_Performance", mgr->GetCommonFileName()))); |
1ee39b3a | 27 | |
28 | ||
29 | // TRD combined tracking efficiency | |
99535225 | 30 | if(mgr->GetMCtruthEventHandler() && TESTBIT(map, AliTRDpwg1Helper::kEfficiencyMC)) { |
705f8b0a | 31 | mgr->AddTask(eff = new AliTRDefficiencyMC((char*)"TRDefficiencyMC")); |
32 | eff->SetDebugLevel(0); | |
33 | //AliLog::SetClassDebugLevel("AliTRDefficiencyMC", 5); | |
1ee39b3a | 34 | |
35 | // Create containers for input/output | |
705f8b0a | 36 | mgr->ConnectInput(eff, 0, mgr->GetCommonInputContainer()); |
94b94be0 | 37 | mgr->ConnectInput(eff, 1, ci[trackStatus]); |
38 | mgr->ConnectInput(eff, 2, evInfoContainer); | |
4345681e | 39 | mgr->ConnectOutput(eff, 1, mgr->CreateContainer(eff->GetName(), TObjArray::Class(), AliAnalysisManager::kOutputContainer, Form("%s:TRD_Performance", mgr->GetCommonFileName()))); |
1ee39b3a | 40 | } |
41 | ||
42 | // TRD single track selection | |
99535225 | 43 | if(!(TESTBIT(map, AliTRDpwg1Helper::kMultiplicity))) return; |
1ee39b3a | 44 | |
705f8b0a | 45 | mgr->AddTask(eff = new AliTRDmultiplicity((char*)"TRDmultiplicity")); |
46 | eff->SetDebugLevel(0); | |
47 | //AliLog::SetClassDebugLevel("AliTRDmultiplicity", 5); | |
48 | mgr->ConnectInput(eff, 0, mgr->GetCommonInputContainer()); | |
49 | mgr->ConnectInput(eff, 1, ci[0]); | |
d0967050 | 50 | mgr->ConnectOutput(eff, 1, mgr->CreateContainer(eff->GetName(), TObjArray::Class(), AliAnalysisManager::kOutputContainer, Form("%s:TRD_Calibration", mgr->GetCommonFileName()))); |
1ee39b3a | 51 | } |
52 |