1 AliAnalysisTaskHJetEmbed *AddTaskHJetEmbedPYTHIA(const TString period = "lhc11h",
2 const Bool_t runQA = kTRUE,
3 const Bool_t runHJet = kTRUE,
4 const Bool_t runMatch = kTRUE,
5 const TString trackName = "PicoTracks",
6 const TString clusterName = "",
7 const TString mcName = "MCParticlesSelected",
8 const Double_t jetRadius = 0.4,
9 const TString jetArrayPL = "",
10 const TString jetArrayDL = "",
11 const TString jetArray = "",
12 const TString rhoName = "",
13 const Double_t minTrkPt = 0.15, const Double_t maxTrkPt = 1e4,
14 const Double_t minTrkEta = -0.9, const Double_t maxTrkEta = 0.9,
15 const Double_t minTrkPhi = 0, const Double_t maxTrkPhi = 2*TMath::Pi()
19 // Get the pointer to the existing analysis manager via the static access method.
20 //==============================================================================
21 AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
24 ::Error("AddTaskHJetEmbedPYTHIA", "No analysis manager to connect to.");
28 // Check the analysis type using the event handlers connected to the analysis manager.
29 //==============================================================================
30 if (!mgr->GetInputEventHandler())
32 ::Error("AddTaskHJetEmbedPYTHIA", "This task requires an input event handler");
37 AliAnalysisTaskHJetEmbed *taskEmbed = new AliAnalysisTaskHJetEmbed("AnaEmbedPYTHIA");
38 taskEmbed->SetRunPeriod(period.Data());
39 taskEmbed->SetTrkPtRange(minTrkPt, maxTrkPt);
40 taskEmbed->SetTrkPhiRange(minTrkPhi, maxTrkPhi);
41 taskEmbed->SetTrkEtaRange(minTrkEta, maxTrkEta);
42 taskEmbed->SetRadius(jetRadius);
43 taskEmbed->SetTrackArrName(trackName.Data());
44 taskEmbed->SetMCParticleArrName(mcName.Data());
45 taskEmbed->SetRhoName(rhoName.Data());
46 taskEmbed->SetJetArrName(jetArray.Data());
47 taskEmbed->SetPLJetArrName(jetArrayPL.Data());
48 taskEmbed->SetDLJetArrName(jetArrayDL.Data());
49 taskEmbed->SetRunQA(runQA);
50 taskEmbed->SetRunHJet(runHJet);
51 taskEmbed->SetRunMatch(runMatch);
52 if(period.Contains("lhc10h",TString::kIgnoreCase) || period.Contains("lhc11h",TString::kIgnoreCase))
53 taskEmbed->SetCollisionSystem("PbPb");
55 taskEmbed->SetCollisionSystem("pp");
57 if(period.Contains("lhc11h",TString::kIgnoreCase))
58 taskEmbed->SelectCollisionCandidates(AliVEvent::kAnyINT | AliVEvent::kCentral | AliVEvent::kSemiCentral);
60 AliAnalysisDataContainer *coutput = mgr->CreateContainer("EmbedPYTHIA",TList::Class(),AliAnalysisManager::kOutputContainer,Form("%s", AliAnalysisManager::GetCommonFileName()));
61 mgr->ConnectInput(taskEmbed,0,mgr->GetCommonInputContainer());
62 mgr->ConnectOutput(taskEmbed,1,coutput);