ROOT logo
AliAnalysisTaskHJetDphi *AddTaskHJetDphi(const char *name = "HJetDphi", 
					 const TString period = "lhc11h",
					 const UInt_t pSel = AliVEvent::kAnyINT | AliVEvent::kCentral | AliVEvent::kSemiCentral,
					 const Bool_t isEmbed = kFALSE,
					 const Bool_t ismc = kFALSE, 
					 const Bool_t anaTruth = kFALSE,
					 const char *nonStdFile = "",
					 const char *mcParticleArrayName = "",
					 const char *trkArrayName = "",
					 const char *trkHybridName = "",
					 const char *jetArrayName = "",
					 const char *jetDLArrayName = "",
					 const char *jetPLArrayName = "",
					 const char *rhoName = "",
					 const Double_t radius = 0.4,
					 const UInt_t filterMask = 768,
					 const Bool_t requireITSrefit = kTRUE,
					 const Double_t minTT = 20,
					 const Double_t maxTT = 50,
					 const Double_t ptTrk = 0.15,
					 const Double_t ptJet = 10,
					 const Bool_t runSingleInclHJet = kTRUE,
					 const Bool_t runBkgFlow = kTRUE,
					 const Bool_t runTrkQA = kTRUE,
					 const Bool_t runJetQA = kTRUE,
					 const Bool_t runPLHJet = kFALSE,
					 const Bool_t runDLHJet = kFALSE,
					 const Bool_t runLeadTrkQA = kFALSE,
					 const Int_t aodTrkBit0 = 256,
					 const Int_t aodTrkBit1 = 512)
{
   Printf("Adding h+jet dphi task\n");

   AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
   if(!mgr){
      ::Error("AddTaskHJetDphi", "No analysis manager to connect to.");
      return NULL;
   }
   if(!mgr->GetInputEventHandler()){
      ::Error("AddTaskHJetDphi", "This task requires an input event handler.");
      return NULL;
   }

  if(period.Contains("lhc11a",TString::kIgnoreCase))
    pSel = AliVEvent::kMB | AliVEvent::kEMC1;
  if(period.Contains("lhc12a15e",TString::kIgnoreCase))
    pSel = 0;

  char *tname = Form("%s_Charged_ANTIKT%02d_Filter%d_Cut%05d",name,(Int_t)(radius*10),filterMask,(Int_t)(ptTrk*1e3));
  AliAnalysisTaskHJetDphi *hJetTask = new AliAnalysisTaskHJetDphi(tname);
  hJetTask->SetIsEmbedding(isEmbed);
  hJetTask->SetAnaType(1);
  hJetTask->SetRunPeriod(period.Data());
  if(period.Contains("lhc10h",TString::kIgnoreCase) || period.Contains("lhc11h",TString::kIgnoreCase))
    hJetTask->SetCollisionSystem("PbPb");
  else
    hJetTask->SetCollisionSystem("pp");
  hJetTask->SetIsMC(ismc);
  hJetTask->SetAnalyzeMCTruth(anaTruth);
  hJetTask->SetOfflineTrgMask(pSel);
  hJetTask->SetMaxVtxZ(10);
  hJetTask->SetFilterMask(filterMask);
  hJetTask->SetRequireITSRefit(requireITSrefit);
  hJetTask->SetNonStdFile(nonStdFile);
  hJetTask->SetMcParticleArrName(mcParticleArrayName);
  hJetTask->SetEmbTrkArrName(trkHybridName);
  hJetTask->SetTrackArrName(trkArrayName);
  hJetTask->SetJetArrName(jetArrayName);
  hJetTask->SetPLJetArrName(jetPLArrayName);
  hJetTask->SetDLJetArrName(jetDLArrayName);
  hJetTask->SetRhoName(rhoName);
  hJetTask->SetRadius(radius);
  hJetTask->SetTrkPtRange(ptTrk,1e4);
  hJetTask->SetTrkPhiRange(0,2*TMath::Pi());
  hJetTask->SetTrkEtaRange(-0.9,0.9);
  hJetTask->SetTTRange(minTT,maxTT);
  hJetTask->SetJetPtMin(ptJet);
  hJetTask->SetRunSingleInclHJet(runSingleInclHJet);
  hJetTask->SetRunTrkQA(runTrkQA);
  hJetTask->SetRunJetQA(runJetQA);
  hJetTask->SetRunPLHJet(runPLHJet);
  hJetTask->SetRunDLHJet(runDLHJet);
  hJetTask->SetRunLeadTrkQA(runLeadTrkQA);
  hJetTask->SetRunBkgFlow(runBkgFlow);
  hJetTask->SetAODfilterBits(aodTrkBit0,aodTrkBit1);

  mgr->AddTask(hJetTask);
  TString foutputrmaAliAnalysisTaskHJetDphi = Form("rma_AliHadJetQATask.root");
  AliAnalysisDataContainer *coutput = mgr->CreateContainer(Form("%s_TT%1.0f%1.0f",tname,minTT,maxTT),
							   TList::Class(),
							   AliAnalysisManager::kOutputContainer,Form("%s:%s_TT%1.0f%1.0f",AliAnalysisManager::GetCommonFileName(),tname,minTT,maxTT));
  mgr->ConnectInput (hJetTask, 0, mgr->GetCommonInputContainer());
  mgr->ConnectOutput(hJetTask, 0, mgr->GetCommonOutputContainer());
  mgr->ConnectOutput(hJetTask, 1, coutput);
  
  return hJetTask;
}
 AddTaskHJetDphi.C:1
 AddTaskHJetDphi.C:2
 AddTaskHJetDphi.C:3
 AddTaskHJetDphi.C:4
 AddTaskHJetDphi.C:5
 AddTaskHJetDphi.C:6
 AddTaskHJetDphi.C:7
 AddTaskHJetDphi.C:8
 AddTaskHJetDphi.C:9
 AddTaskHJetDphi.C:10
 AddTaskHJetDphi.C:11
 AddTaskHJetDphi.C:12
 AddTaskHJetDphi.C:13
 AddTaskHJetDphi.C:14
 AddTaskHJetDphi.C:15
 AddTaskHJetDphi.C:16
 AddTaskHJetDphi.C:17
 AddTaskHJetDphi.C:18
 AddTaskHJetDphi.C:19
 AddTaskHJetDphi.C:20
 AddTaskHJetDphi.C:21
 AddTaskHJetDphi.C:22
 AddTaskHJetDphi.C:23
 AddTaskHJetDphi.C:24
 AddTaskHJetDphi.C:25
 AddTaskHJetDphi.C:26
 AddTaskHJetDphi.C:27
 AddTaskHJetDphi.C:28
 AddTaskHJetDphi.C:29
 AddTaskHJetDphi.C:30
 AddTaskHJetDphi.C:31
 AddTaskHJetDphi.C:32
 AddTaskHJetDphi.C:33
 AddTaskHJetDphi.C:34
 AddTaskHJetDphi.C:35
 AddTaskHJetDphi.C:36
 AddTaskHJetDphi.C:37
 AddTaskHJetDphi.C:38
 AddTaskHJetDphi.C:39
 AddTaskHJetDphi.C:40
 AddTaskHJetDphi.C:41
 AddTaskHJetDphi.C:42
 AddTaskHJetDphi.C:43
 AddTaskHJetDphi.C:44
 AddTaskHJetDphi.C:45
 AddTaskHJetDphi.C:46
 AddTaskHJetDphi.C:47
 AddTaskHJetDphi.C:48
 AddTaskHJetDphi.C:49
 AddTaskHJetDphi.C:50
 AddTaskHJetDphi.C:51
 AddTaskHJetDphi.C:52
 AddTaskHJetDphi.C:53
 AddTaskHJetDphi.C:54
 AddTaskHJetDphi.C:55
 AddTaskHJetDphi.C:56
 AddTaskHJetDphi.C:57
 AddTaskHJetDphi.C:58
 AddTaskHJetDphi.C:59
 AddTaskHJetDphi.C:60
 AddTaskHJetDphi.C:61
 AddTaskHJetDphi.C:62
 AddTaskHJetDphi.C:63
 AddTaskHJetDphi.C:64
 AddTaskHJetDphi.C:65
 AddTaskHJetDphi.C:66
 AddTaskHJetDphi.C:67
 AddTaskHJetDphi.C:68
 AddTaskHJetDphi.C:69
 AddTaskHJetDphi.C:70
 AddTaskHJetDphi.C:71
 AddTaskHJetDphi.C:72
 AddTaskHJetDphi.C:73
 AddTaskHJetDphi.C:74
 AddTaskHJetDphi.C:75
 AddTaskHJetDphi.C:76
 AddTaskHJetDphi.C:77
 AddTaskHJetDphi.C:78
 AddTaskHJetDphi.C:79
 AddTaskHJetDphi.C:80
 AddTaskHJetDphi.C:81
 AddTaskHJetDphi.C:82
 AddTaskHJetDphi.C:83
 AddTaskHJetDphi.C:84
 AddTaskHJetDphi.C:85
 AddTaskHJetDphi.C:86
 AddTaskHJetDphi.C:87
 AddTaskHJetDphi.C:88
 AddTaskHJetDphi.C:89
 AddTaskHJetDphi.C:90
 AddTaskHJetDphi.C:91
 AddTaskHJetDphi.C:92
 AddTaskHJetDphi.C:93
 AddTaskHJetDphi.C:94
 AddTaskHJetDphi.C:95
 AddTaskHJetDphi.C:96
 AddTaskHJetDphi.C:97
 AddTaskHJetDphi.C:98