-// $Id$
-
AliAnalysisTaskFlavourJetCorrelations *AddTaskFlavourJetCorrelations(
- AliAnalysisTaskRecoJetCorrelations::ECandidateType cand = AliAnalysisTaskRecoJetCorrelations::kDstartoKpipi,
+ AliAnalysisTaskFlavourJetCorrelations::ECandidateType cand = AliAnalysisTaskFlavourJetCorrelations::kDstartoKpipi,
TString filename = "DStartoKpipiCuts.root",
Bool_t theMCon = kFALSE,
+ Bool_t reco = kTRUE /*must be true if theMCon is false*/,
TString jetArrname = "",
TString suffix = "",
Bool_t triggerOnLeadingJet = kFALSE,
+ Int_t leadingHadType = 0 /*0 = charged, 1 = neutral, 2 = both*/,
Float_t R = 0.4,
Float_t jptcut = 10.,
- Int_t acceptance = 1 /*1= 0-2pi, 2=emcal cut*/,
- Double_t areaCut = 0.)
+ const char *cutType = "TPC",
+ Double_t percjetareacut = 1.)
{
AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
if (!mgr) {
printf("CREATE TASK\n"); //CREATE THE TASK
// create the task
- AliAnalysisTaskFlavourJetCorrelations *task = new AliAnalysisTaskFlavourJetCorrelations("AnaTaskFlavourJetCorrelations", analysiscuts, cand, jetArrname);
-
- //D meson settings
+ AliAnalysisTaskFlavourJetCorrelations *task = new AliAnalysisTaskFlavourJetCorrelations("AnaTaskFlavourJetCorrelations",
+ analysiscuts, cand);
+ task->SetJetsName(jetArrname);
task->SetMC(theMCon);
+ task->SetUseReco(reco);
task->SetTriggerOnLeadingJet(triggerOnLeadingJet);
-
- //jet settings
- task->SetJetRadius(R);
+ task->SetJetAcceptanceType(cutType);
task->SetJetPtCut(jptcut);
-
- Float_t etaCov=0.9;
- if (acceptance==2) etaCov=0.7; //EMCal
-
- Float_t minEta = -etaCov+R;
- Float_t maxEta = etaCov-R;
- if (acceptance) task->SetJetEtaLimits(minEta, maxEta);
-
- Float_t minPhi = 0.;
- Float_t maxPhi = 2.*TMath::Pi();
-//if (acceptance==2) { /*80-180 degree*/ }
- if (acceptance) task->SetJetPhiLimits(minPhi, maxPhi);
-
- //Float_t area=0.6*TMath::Pi()*R*R;
- task->SetJetAreaCut(areaCut);
+ task->SetPercAreaCut(percjetareacut);
+
mgr->AddTask(task);
+ if(theMCon) {
+ suffix+="MC";
+ if(reco) suffix+="rec";
+ }
+
// Create and connect containers for input/output
TString outputfile = AliAnalysisManager::GetCommonFileName();
outputfile += ":PWG3_D2H_DEmcalJet";
outputfile += suffix;
- TString nameContainer0="histogramsCorrelations";
- TString nameContainer1="cuts";
+ TString candname="DStar";
+ if(cand==0) candname="D0";
- nameContainer0 += suffix;
- nameContainer1 += suffix;
+ TString nameContainer1="hCor";
+ TString nameContainer2="cutsJ";
+ nameContainer1 += candname;
+ nameContainer2 += candname;
+
+ nameContainer1 += suffix;
+ nameContainer2 += suffix;
// ------ input data ------
AliAnalysisDataContainer *cinput0 = mgr->GetCommonInputContainer();
// ----- output data -----
-
- // output TH1I for event counting
- AliAnalysisDataContainer *coutput1 = mgr->CreateContainer(nameContainer0, TList::Class(),AliAnalysisManager::kOutputContainer,outputfile.Data());
- AliAnalysisDataContainer *coutput2 = mgr->CreateContainer(nameContainer1, AliRDHFCuts::Class(),AliAnalysisManager::kOutputContainer, outputfile.Data());
+ AliAnalysisDataContainer *coutput1 = mgr->CreateContainer(nameContainer1, TList::Class(),AliAnalysisManager::kOutputContainer,outputfile.Data());
+ AliAnalysisDataContainer *coutput2 = mgr->CreateContainer(nameContainer2, AliRDHFCuts::Class(),AliAnalysisManager::kOutputContainer, outputfile.Data());
mgr->ConnectInput(task,0,mgr->GetCommonInputContainer());
mgr->ConnectOutput(task,1,coutput1);
mgr->ConnectOutput(task,2,coutput2);
+
Printf("Input and Output connected to the manager");
return task ;
}