// $Id$
+AliJetEmbeddingFromGenTask* AddTaskJetEmbeddingFromGen(
+ Int_t genType = 0, //use Pythia as default
+ Double_t ptHardMin = 50.,
+ Double_t ptHardMax = 1000.,
+ Double_t ecms = 2760.,
+ const char *tracksName = "GenParticles",
+ const char *taskName = "JetEmbeddingFromGenTask",
+ const Double_t minPt = 10,
+ const Double_t maxPt = 10,
+ const Double_t minEta = -0.9,
+ const Double_t maxEta = 0.9,
+ const Double_t minPhi = 0,
+ const Double_t maxPhi = TMath::Pi() * 2,
+ const Bool_t copyArray = kTRUE,
+ const Bool_t drawQA = kFALSE,
+ const char *partonInfoName = ""
+)
+{
+ AliGenerator *genGen = NULL;
+ if(genType==0) { //PYTHIA Perugia 2011
+ gROOT->LoadMacro("$ALICE_ROOT/ANALYSIS/macros/train/AddMCGenPythia.C");
+ genGen = AddMCGenPythia(ecms, ptHardMin, ptHardMax, 2, genType);
+ }
+ else if(genType==1 || genType==2) { //QPYTHIA and PYQUEN
+ gROOT->LoadMacro("$ALICE_ROOT/ANALYSIS/macros/train/AddMCGenQuench.C");
+ genGen = AddMCGenQuench(ecms, ptHardMin, ptHardMax, genType);
+ }
+ if(!genGen) {
+ ::Error("AddTaskJetEmbeddingFromGenTask", "Generator does not exist");
+ return NULL;
+ }
+
+ AliJetEmbeddingFromGenTask *task = AddTaskJetEmbeddingFromGen(genGen,tracksName,taskName,minPt,maxPt,minEta,maxEta,minPhi,maxPhi,copyArray,drawQA,partonInfoName);
+
+ return task;
+
+}
+
AliJetEmbeddingFromGenTask* AddTaskJetEmbeddingFromGen(
AliGenerator *genGen,
const char *tracksName = "GenParticles",
AliJetEmbeddingFromGenTask *jetEmb = new AliJetEmbeddingFromGenTask(taskName,drawQA);
// if pythia is used as a generator, tell it not to print the event history to the screen
- if(TString(genGen->IsA()->GetName()).EqualTo("AliGenPythia")) genGen->AliGenPythia::SetEventListRange(0, 0);
- jetEmb->SetGen(genGen);
+ if(genGen) {
+ if(TString(genGen->IsA()->GetName()).EqualTo("AliGenPythia")) genGen->AliGenPythia::SetEventListRange(0, 0);
+ jetEmb->SetGen(genGen);
+ }
jetEmb->SetTracksName(tracksName);
jetEmb->SetPartonInfoName(partonInfoName);
jetEmb->SetEtaRange(minEta, maxEta);