1 AliAnalysisTaskV0sInJetsEmcal* AddTaskV0sInJetsEmcal(TString jetBranchName = "", Double_t dRadius = 0.2, TString jetBranchBgName = "", Double_t dRadiusBg = 0.2, TString outputFile = "output.root", Bool_t bIsMC = kFALSE, TString label = "", TString tracksName = "PicoTracks", TString clustersCorrName = "CaloClustersCorr", TString rhoName = "Rho", TString sType = "TPC")
3 AliAnalysisManager* mgr = AliAnalysisManager::GetAnalysisManager();
6 Error("AddTaskV0sInJetsEmcal", "No analysis manager found.");
10 TString taskName = "V0";
11 TString containerName = "V0histo";
12 if(jetBranchName.Length())
14 taskName += Form("_%s", jetBranchName.Data());
15 containerName += Form("_%s", jetBranchName.Data());
19 taskName += Form("_%s", label.Data());
20 containerName += Form("_%s", label.Data());
22 AliAnalysisTaskV0sInJetsEmcal* mytask = new AliAnalysisTaskV0sInJetsEmcal(taskName.Data());
24 mytask->SetMCAnalysis(bIsMC);
26 AliParticleContainer* trackCont = mytask->AddParticleContainer(tracksName);
27 AliClusterContainer* clusterCont = mytask->AddClusterContainer(clustersCorrName);
29 AliJetContainer* jetCont = mytask->AddJetContainer(jetBranchName, sType, dRadius);
32 jetCont->SetRhoName(rhoName);
33 jetCont->SetLeadingHadronType(0);
34 jetCont->ConnectParticleContainer(trackCont);
35 jetCont->ConnectClusterContainer(clusterCont);
37 AliJetContainer* jetContBg = mytask->AddJetContainer(jetBranchBgName, sType, dRadiusBg);
40 jetContBg->SetJetAreaCut(0.01);
41 jetContBg->SetAreaEmcCut(0);
42 jetContBg->SetJetPtCut(0);
43 jetContBg->ConnectParticleContainer(trackCont);
44 jetContBg->ConnectClusterContainer(clusterCont);
50 // Create containers for input/output
51 AliAnalysisDataContainer* cinput0 = mgr->GetCommonInputContainer();
52 AliAnalysisDataContainer* coutput0 = mgr->GetCommonOutputContainer();
53 AliAnalysisDataContainer* coutput1 = mgr->CreateContainer(Form("%s_%s", containerName.Data(), "Std"), TList::Class(), AliAnalysisManager::kOutputContainer, Form("%s:%s", outputFile.Data(), taskName.Data()));
54 AliAnalysisDataContainer* coutput2 = mgr->CreateContainer(Form("%s_%s", containerName.Data(), "QA"), TList::Class(), AliAnalysisManager::kOutputContainer, Form("%s:%s", outputFile.Data(), taskName.Data()));
55 AliAnalysisDataContainer* coutput3 = mgr->CreateContainer(Form("%s_%s", containerName.Data(), "Cuts"), TList::Class(), AliAnalysisManager::kOutputContainer, Form("%s:%s", outputFile.Data(), taskName.Data()));
56 AliAnalysisDataContainer* coutput4 = mgr->CreateContainer(Form("%s_%s", containerName.Data(), "MC"), TList::Class(), AliAnalysisManager::kOutputContainer, Form("%s:%s", outputFile.Data(), taskName.Data()));
58 // Connect input/output
59 mgr->ConnectInput(mytask, 0, cinput0);
60 mgr->ConnectOutput(mytask, 1, coutput1);
61 mgr->ConnectOutput(mytask, 2, coutput2);
62 mgr->ConnectOutput(mytask, 3, coutput3);
63 mgr->ConnectOutput(mytask, 4, coutput4);