]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG3/muon/AddTaskSingleMuonAnalysis.C
- Clean methods related to matching and hit pattern in AODTrack.
[u/mrichter/AliRoot.git] / PWG3 / muon / AddTaskSingleMuonAnalysis.C
1 AliAnalysisTaskSingleMu *AddTaskSingleMuonAnalysis(){
2
3    // Get the pointer to the existing analysis manager via the static access method.
4    //==============================================================================
5    
6    AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
7    if (!mgr) {
8       ::Error("AddtaskSingleMuonAnalysis", "No analysis manager to connect to.");
9       return NULL;
10    }   
11    
12    // Check if MC handler is connected in case kine filter requested
13    //===========================================================================   
14
15    AliMCEventHandler *mcH = (AliMCEventHandler*)mgr->GetMCtruthEventHandler();
16    if (!mcH) {
17       ::Error("AddTaskSingleMuonAnalysis", "No MC handler connected");
18       return NULL;
19    }    
20
21    TString outputfile = AliAnalysisManager::GetCommonFileName();
22    outputfile += ":PWG3Muon_SingleMuon";
23
24    AliAnalysisDataContainer *coutput1 = mgr->CreateContainer("SingleMuon",TList::Class(),AliAnalysisManager::kOutputContainer,outputfile);
25    AliAnalysisDataContainer *coutput2 = mgr->CreateContainer("SingleMuonMC",TList::Class(),AliAnalysisManager::kOutputContainer,outputfile);
26
27    // Create the task, add it to the manager and configure it.
28    //===========================================================================   
29
30    AliAnalysisTaskSingleMu *SingleMuonAnalysisTask = new AliAnalysisTaskSingleMu("Single Muon Analysis Task");
31    mgr->AddTask(SingleMuonAnalysisTask);
32    
33    // Create ONLY the output containers for the data produced by the task.
34    // Get and connect other common input/output containers via the manager as below
35    //==============================================================================
36    
37    mgr->ConnectInput  (SingleMuonAnalysisTask,  0, mgr->GetCommonInputContainer());
38    mgr->ConnectOutput (SingleMuonAnalysisTask,  1, coutput1);
39    mgr->ConnectOutput (SingleMuonAnalysisTask,  2, coutput2);
40
41    return SingleMuonAnalysisTask;
42 }