]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG/muon/AnalysisTrainCreateMixedDimuons.C
Merge branch 'feature-movesplit'
[u/mrichter/AliRoot.git] / PWG / muon / AnalysisTrainCreateMixedDimuons.C
CommitLineData
866de0ba 1//===========================================================================================
2
3// Analysis Train driving an AliAnalysisTaskCreateMixedDimuons multiple-event task
4// creating mixed muon pairs
5//
6// Authors Alessandro De Falco and Antonio Uras, INFN Cagliari
7// alessandro.de.falco@ca.infn.it antonio.uras@ca.infn.it
8
9//===========================================================================================
10
11void AnalysisTrainCreateMixedDimuons(Char_t *nameTagDir = ".",
12 Char_t *nameOutFileAOD = "AliAODsMixedEvents.root",
13 Int_t bufferSize = 2) {
14
4070f709 15 gSystem->Load("libANALYSIS");
16 gSystem->Load("libANALYSISalice");
17 gSystem->Load("libCORRFW");
18 gSystem->Load("libPWGmuon");
866de0ba 19
20 AliMultiEventInputHandler *inputHandler = new AliMultiEventInputHandler(bufferSize);
21
22 // setting pools definition...
23
24 AliEventPoolMuon *pool = new AliEventPoolMuon("eventPool", "AOD");
25 pool->SetTagDirectory(nameTagDir);
26 pool->SetMultiplicityRange(1, 100, 100); // min, max, step
27 pool->SetNFWMuonRange(1, 10, 10); // min, max, step
28 pool->SetPrimaryVertexZRange(-100., -90., 1.); // min, max, step
29 pool->Init();
30
31 // ... done!
32
33 AliAnalysisManager *mgr = new AliAnalysisManager("MixingAnalysisTest");
34 mgr -> SetInputEventHandler(inputHandler);
35 mgr -> SetEventPool(pool);
36
37 inputHandler->SetEventPool(pool);
38
39 AliAnalysisTaskCreateMixedDimuons *mixTask = new AliAnalysisTaskCreateMixedDimuons("AliAnalysisTaskCreateMixedDimuons");
40 mixTask -> SetDebugLevel(10);
41 mgr -> AddTask(mixTask);
42
43 AliAnalysisDataContainer *cInputChain = mgr->GetCommonInputContainer();
44
45 AliAnalysisDataContainer *cOutputUserAODTree = mgr->CreateContainer("cOutputUserAODTree", TTree::Class(),
46 AliAnalysisManager::kOutputContainer,
47 nameOutFileAOD);
48
49 mgr -> ConnectInput (mixTask, 0, cInputChain);
50 mgr -> ConnectOutput(mixTask, 1, cOutputUserAODTree);
51
52 mgr -> SetDebugLevel(10);
53
54 if (!mgr->InitAnalysis()) return;
55 mgr->PrintStatus();
56 mgr->StartAnalysis("mix");
57
58}
59
60//===========================================================================================