]>
Commit | Line | Data |
---|---|---|
335dcaa5 | 1 | |
2 | void AddTaskFPexample(AliAnalysisManager *mgr, | |
3 | AliAnalysisAlien *plugin, | |
4 | const char *runtype, | |
5 | const bool useRealData, | |
6 | const char *taskname, | |
7 | const Int_t gridRun = -1) | |
8 | { | |
9 | if (!mgr) { | |
10 | Printf("ERROR: undefined manager, FPexample won't be added"); | |
11 | return; | |
12 | } | |
13 | if (!plugin) { | |
14 | Printf("ERROR: undefined alien plugin, FPexample won't be added"); | |
15 | return; | |
16 | } | |
17 | // create task | |
18 | gROOT->LoadMacro("AliAnalysisTaskFirstPhysics.cxx++g"); | |
19 | gROOT->LoadMacro("AliAnalysisHistosVertex.cxx++g"); | |
20 | gROOT->LoadMacro("AliAnalysisTaskFPexample.cxx++g"); | |
21 | ||
22 | AliAnalysisTaskFPexample* task = new AliAnalysisTaskFPexample(taskname); | |
23 | task->SelectCollisionCandidates(AliVEvent::kMB); // if physics selection performed in UserExec(), this line should be commented | |
24 | task->SetCutTrackPt(0.15, 1e10); | |
25 | task->SetCutEta(0.8); | |
26 | task->SetCutVertexZ(10); | |
27 | mgr->AddTask(task); | |
28 | ||
29 | // set output root file name for different analysis | |
30 | TString outfilename; | |
31 | if (runtype == "grid") { | |
32 | outfilename = TString::Format("grid_%d_%s.root", gridRun, useRealData ? "data" : "sim"); | |
33 | plugin->SetDefaultOutputs(kFALSE); | |
34 | plugin->SetOutputFiles(outfilename); | |
35 | } else { | |
36 | outfilename = TString::Format("%s_xx_%s.root", runtype, useRealData ? "data" : "sim"); | |
37 | } | |
38 | ||
39 | // create containers for input/output | |
40 | AliAnalysisDataContainer *cinput = mgr->GetCommonInputContainer(); | |
41 | AliAnalysisDataContainer *coutput1 = mgr->CreateContainer("coutput1", TList::Class(), AliAnalysisManager::kOutputContainer, outfilename.Data()); | |
42 | // connect input/output | |
43 | mgr->ConnectInput(task, 0, cinput); | |
44 | mgr->ConnectOutput(task, 1, coutput1); | |
45 | } |