AliAnalysisTaskMuonTrackingEff *AddTaskMUONTrackingEfficiency(AliMuonTrackCuts &trackCuts, TString extension = "")
{
//
// Task for the determination of the MUON tracking chamber efficiency
//
// lenhardt@subatech.in2p3.fr
// lardeux@subatech.in2p3.fr
//
// Get the pointer to the existing analysis manager via the static access method
AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
if (!mgr) {
::Error("AddTaskMUONTrackingEfficiency", "No analysis manager to connect to.");
return NULL;
}
// This task run on ESDs
TString type = mgr->GetInputEventHandler()->GetDataType();
if (!type.Contains("ESD")) {
::Error("AddTaskMUONTrackingEfficiency", "ESD input handler needed!");
return NULL;
}
// Define output file directory
TString fileName = AliAnalysisManager::GetCommonFileName();
if (fileName.IsNull()) {
::Error("AddTaskMUONTrackingEfficiency", "Common output file is not defined!");
return NULL;
}
fileName += ":MUON_Efficiency";
TString suffix = (!extension.IsNull()) ? Form("_%s",extension.Data()) : "";
fileName += suffix;
// Create and configure task
TString name = Form("MuonTrackingEfficiency%s",extension.Data());
AliAnalysisTaskMuonTrackingEff* taskMuonTrackingEff = new AliAnalysisTaskMuonTrackingEff(name.Data());
taskMuonTrackingEff->SetMuonTrackCuts(trackCuts);
// Add to the manager
mgr->AddTask(taskMuonTrackingEff);
// Connect input container
mgr->ConnectInput (taskMuonTrackingEff, 0, mgr->GetCommonInputContainer());
// Create and connect output containers
AliAnalysisDataContainer *coutput1 = mgr->CreateContainer(Form("ClustersCounters%s",suffix.Data()), AliCounterCollection::Class(), AliAnalysisManager::kOutputContainer, fileName);
AliAnalysisDataContainer *coutput2 = mgr->CreateContainer(Form("TracksDetectedPerChamber%s",suffix.Data()), TList::Class(), AliAnalysisManager::kOutputContainer, fileName);
AliAnalysisDataContainer *coutput3 = mgr->CreateContainer(Form("TotalTracksPerChamber%s",suffix.Data()), TList::Class(), AliAnalysisManager::kOutputContainer, fileName);
AliAnalysisDataContainer *coutput4 = mgr->CreateContainer(Form("SingleDetectedPerChamber%s",suffix.Data()), TList::Class(), AliAnalysisManager::kOutputContainer, fileName);
AliAnalysisDataContainer *coutput5 = mgr->CreateContainer(Form("ExtraHistos%s",suffix.Data()), TList::Class(), AliAnalysisManager::kOutputContainer, fileName);
mgr->ConnectOutput(taskMuonTrackingEff, 1, coutput1);
mgr->ConnectOutput(taskMuonTrackingEff, 2, coutput2);
mgr->ConnectOutput(taskMuonTrackingEff, 3, coutput3);
mgr->ConnectOutput(taskMuonTrackingEff, 4, coutput4);
mgr->ConnectOutput(taskMuonTrackingEff, 5, coutput5);
return taskMuonTrackingEff;
}
AddTaskMUONTrackingEfficiency.C:1 AddTaskMUONTrackingEfficiency.C:2 AddTaskMUONTrackingEfficiency.C:3 AddTaskMUONTrackingEfficiency.C:4 AddTaskMUONTrackingEfficiency.C:5 AddTaskMUONTrackingEfficiency.C:6 AddTaskMUONTrackingEfficiency.C:7 AddTaskMUONTrackingEfficiency.C:8 AddTaskMUONTrackingEfficiency.C:9 AddTaskMUONTrackingEfficiency.C:10 AddTaskMUONTrackingEfficiency.C:11 AddTaskMUONTrackingEfficiency.C:12 AddTaskMUONTrackingEfficiency.C:13 AddTaskMUONTrackingEfficiency.C:14 AddTaskMUONTrackingEfficiency.C:15 AddTaskMUONTrackingEfficiency.C:16 AddTaskMUONTrackingEfficiency.C:17 AddTaskMUONTrackingEfficiency.C:18 AddTaskMUONTrackingEfficiency.C:19 AddTaskMUONTrackingEfficiency.C:20 AddTaskMUONTrackingEfficiency.C:21 AddTaskMUONTrackingEfficiency.C:22 AddTaskMUONTrackingEfficiency.C:23 AddTaskMUONTrackingEfficiency.C:24 AddTaskMUONTrackingEfficiency.C:25 AddTaskMUONTrackingEfficiency.C:26 AddTaskMUONTrackingEfficiency.C:27 AddTaskMUONTrackingEfficiency.C:28 AddTaskMUONTrackingEfficiency.C:29 AddTaskMUONTrackingEfficiency.C:30 AddTaskMUONTrackingEfficiency.C:31 AddTaskMUONTrackingEfficiency.C:32 AddTaskMUONTrackingEfficiency.C:33 AddTaskMUONTrackingEfficiency.C:34 AddTaskMUONTrackingEfficiency.C:35 AddTaskMUONTrackingEfficiency.C:36 AddTaskMUONTrackingEfficiency.C:37 AddTaskMUONTrackingEfficiency.C:38 AddTaskMUONTrackingEfficiency.C:39 AddTaskMUONTrackingEfficiency.C:40 AddTaskMUONTrackingEfficiency.C:41 AddTaskMUONTrackingEfficiency.C:42 AddTaskMUONTrackingEfficiency.C:43 AddTaskMUONTrackingEfficiency.C:44 AddTaskMUONTrackingEfficiency.C:45 AddTaskMUONTrackingEfficiency.C:46 AddTaskMUONTrackingEfficiency.C:47 AddTaskMUONTrackingEfficiency.C:48 AddTaskMUONTrackingEfficiency.C:49 AddTaskMUONTrackingEfficiency.C:50 AddTaskMUONTrackingEfficiency.C:51 AddTaskMUONTrackingEfficiency.C:52 AddTaskMUONTrackingEfficiency.C:53 AddTaskMUONTrackingEfficiency.C:54 AddTaskMUONTrackingEfficiency.C:55 AddTaskMUONTrackingEfficiency.C:56 AddTaskMUONTrackingEfficiency.C:57 AddTaskMUONTrackingEfficiency.C:58 AddTaskMUONTrackingEfficiency.C:59 AddTaskMUONTrackingEfficiency.C:60 AddTaskMUONTrackingEfficiency.C:61