]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGJE/EMCALJetTasks/macros/AddTaskJetEmbeddingFromGen.C
bookkeep pt hard info when generating on-the-fly pythia events
[u/mrichter/AliRoot.git] / PWGJE / EMCALJetTasks / macros / AddTaskJetEmbeddingFromGen.C
CommitLineData
8628b70c 1// $Id$
aa26ece2 2
3AliJetEmbeddingFromGenTask* AddTaskJetEmbeddingFromGen(
4 AliGenerator *genGen,
5 const char *tracksName = "GenParticles",
6 const char *taskName = "JetEmbeddingFromGenTask",
7 const Double_t minPt = 10,
8 const Double_t maxPt = 10,
9 const Double_t minEta = -0.9,
10 const Double_t maxEta = 0.9,
11 const Double_t minPhi = 0,
12 const Double_t maxPhi = TMath::Pi() * 2,
e6f3b167 13 const Bool_t copyArray = kTRUE,
14 const Bool_t drawQA = kFALSE
aa26ece2 15)
16{
17 // Get the pointer to the existing analysis manager via the static access method.
18 //==============================================================================
19 AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
20 if (!mgr)
21 {
22 ::Error("AddTaskJetEmbedding", "No analysis manager to connect to.");
23 return NULL;
24 }
25
26 // Check the analysis type using the event handlers connected to the analysis manager.
27 //==============================================================================
28 if (!mgr->GetInputEventHandler())
29 {
30 ::Error("AddTaskJetEmbedding", "This task requires an input event handler");
31 return NULL;
32 }
33
34 //-------------------------------------------------------
35 // Init the task and do settings
36 //-------------------------------------------------------
37
e6f3b167 38 AliJetEmbeddingFromGenTask *jetEmb = new AliJetEmbeddingFromGenTask(taskName,drawQA);
aa26ece2 39 jetEmb->SetGen(genGen);
40 jetEmb->SetTracksName(tracksName);
41 jetEmb->SetEtaRange(minEta, maxEta);
42 jetEmb->SetPhiRange(minPhi, maxPhi);
43 jetEmb->SetPtRange(minPt, maxPt);
44 jetEmb->SetCopyArray(copyArray);
45
46 //-------------------------------------------------------
47 // Final settings, pass to manager and set the containers
48 //-------------------------------------------------------
49
50 mgr->AddTask(jetEmb);
51
52 // Create containers for input/output
53 mgr->ConnectInput (jetEmb, 0, mgr->GetCommonInputContainer() );
54
e6f3b167 55 if (drawQA) {
56 TString contName = taskName;
57 contName += "_histos";
58 AliAnalysisDataContainer *outc = mgr->CreateContainer(contName,
59 TList::Class(),
60 AliAnalysisManager::kOutputContainer,
61 "AnalysisResults.root");
62 mgr->ConnectOutput(jetEmb, 1, outc);
63 }
64
65
aa26ece2 66 return jetEmb;
67}