]>
Commit | Line | Data |
---|---|---|
8628b70c | 1 | // $Id$ |
aa26ece2 | 2 | |
3 | AliJetEmbeddingFromGenTask* 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 | } |