AliAnalysisTaskEmcalJetMassResponse* AddTaskEmcalJetMassResponse(const char * njetsBase,
const Double_t R,
const char * nrhoBase,
const char * nrhoMass,
const char * ntracks,
const char * nclusters,
TF1 * fBkgMass,
const char * type = "TPC",
const char * CentEst = "V0M",
Int_t pSel = AliVEvent::kAny,
TString trigClass = "",
TString kEmcalTriggers = "",
TString tag = "MCMatch") {
AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
if (!mgr)
{
Error("AddTaskEmcalJetMassResponse","No analysis manager found.");
return 0;
}
Bool_t ismc=kFALSE;
ismc = (mgr->GetMCtruthEventHandler())?kTRUE:kFALSE;
// Check the analysis type using the event handlers connected to the analysis manager.
//==============================================================================
if (!mgr->GetInputEventHandler())
{
::Error("AddTaskEmcalJetMassResponse", "This task requires an input event handler");
return NULL;
}
TString wagonName = Form("JetMassResponse_%s_TC%s%s",njetsBase,trigClass.Data(),tag.Data());
//Configure jet tagger task
AliAnalysisTaskEmcalJetMassResponse *task = new AliAnalysisTaskEmcalJetMassResponse(wagonName.Data());
task->SetNCentBins(4);
//task->SetVzRange(-10.,10.);
AliParticleContainer *trackCont = task->AddParticleContainer(ntracks);
AliClusterContainer *clusterCont = task->AddClusterContainer(nclusters);
task->SetJetContainerBase(0);
TString strType(type);
AliJetContainer *jetContBase = task->AddJetContainer(njetsBase,strType,R);
if(jetContBase) {
jetContBase->SetRhoName(nrhoBase);
jetContBase->SetRhoMassName(nrhoMass);
jetContBase->ConnectParticleContainer(trackCont);
jetContBase->ConnectClusterContainer(clusterCont);
jetContBase->SetPercAreaCut(0.6);
}
task->SetCaloTriggerPatchInfoName(kEmcalTriggers.Data());
task->SetCentralityEstimator(CentEst);
task->SelectCollisionCandidates(pSel);
task->SetUseAliAnaUtils(kFALSE);
task->SetJetMassAverageFunc(fBkgMass);
mgr->AddTask(task);
//Connnect input
mgr->ConnectInput (task, 0, mgr->GetCommonInputContainer() );
//Connect output
TString contName(wagonName);
TString outputfile = Form("%s",AliAnalysisManager::GetCommonFileName());
AliAnalysisDataContainer *coutput1 = mgr->CreateContainer(contName.Data(), TList::Class(),AliAnalysisManager::kOutputContainer,outputfile);
mgr->ConnectOutput(task,1,coutput1);
AliAnalysisDataContainer *coutput2 = mgr->CreateContainer(Form("%sTree",contName.Data()), TTree::Class(),AliAnalysisManager::kOutputContainer,outputfile);
mgr->ConnectOutput(task,2,coutput2);
return task;
}
AddTaskEmcalJetMassResponse.C:1 AddTaskEmcalJetMassResponse.C:2 AddTaskEmcalJetMassResponse.C:3 AddTaskEmcalJetMassResponse.C:4 AddTaskEmcalJetMassResponse.C:5 AddTaskEmcalJetMassResponse.C:6 AddTaskEmcalJetMassResponse.C:7 AddTaskEmcalJetMassResponse.C:8 AddTaskEmcalJetMassResponse.C:9 AddTaskEmcalJetMassResponse.C:10 AddTaskEmcalJetMassResponse.C:11 AddTaskEmcalJetMassResponse.C:12 AddTaskEmcalJetMassResponse.C:13 AddTaskEmcalJetMassResponse.C:14 AddTaskEmcalJetMassResponse.C:15 AddTaskEmcalJetMassResponse.C:16 AddTaskEmcalJetMassResponse.C:17 AddTaskEmcalJetMassResponse.C:18 AddTaskEmcalJetMassResponse.C:19 AddTaskEmcalJetMassResponse.C:20 AddTaskEmcalJetMassResponse.C:21 AddTaskEmcalJetMassResponse.C:22 AddTaskEmcalJetMassResponse.C:23 AddTaskEmcalJetMassResponse.C:24 AddTaskEmcalJetMassResponse.C:25 AddTaskEmcalJetMassResponse.C:26 AddTaskEmcalJetMassResponse.C:27 AddTaskEmcalJetMassResponse.C:28 AddTaskEmcalJetMassResponse.C:29 AddTaskEmcalJetMassResponse.C:30 AddTaskEmcalJetMassResponse.C:31 AddTaskEmcalJetMassResponse.C:32 AddTaskEmcalJetMassResponse.C:33 AddTaskEmcalJetMassResponse.C:34 AddTaskEmcalJetMassResponse.C:35 AddTaskEmcalJetMassResponse.C:36 AddTaskEmcalJetMassResponse.C:37 AddTaskEmcalJetMassResponse.C:38 AddTaskEmcalJetMassResponse.C:39 AddTaskEmcalJetMassResponse.C:40 AddTaskEmcalJetMassResponse.C:41 AddTaskEmcalJetMassResponse.C:42 AddTaskEmcalJetMassResponse.C:43 AddTaskEmcalJetMassResponse.C:44 AddTaskEmcalJetMassResponse.C:45 AddTaskEmcalJetMassResponse.C:46 AddTaskEmcalJetMassResponse.C:47 AddTaskEmcalJetMassResponse.C:48 AddTaskEmcalJetMassResponse.C:49 AddTaskEmcalJetMassResponse.C:50 AddTaskEmcalJetMassResponse.C:51 AddTaskEmcalJetMassResponse.C:52 AddTaskEmcalJetMassResponse.C:53 AddTaskEmcalJetMassResponse.C:54 AddTaskEmcalJetMassResponse.C:55 AddTaskEmcalJetMassResponse.C:56 AddTaskEmcalJetMassResponse.C:57 AddTaskEmcalJetMassResponse.C:58 AddTaskEmcalJetMassResponse.C:59 AddTaskEmcalJetMassResponse.C:60 AddTaskEmcalJetMassResponse.C:61 AddTaskEmcalJetMassResponse.C:62 AddTaskEmcalJetMassResponse.C:63 AddTaskEmcalJetMassResponse.C:64 AddTaskEmcalJetMassResponse.C:65 AddTaskEmcalJetMassResponse.C:66 AddTaskEmcalJetMassResponse.C:67 AddTaskEmcalJetMassResponse.C:68 AddTaskEmcalJetMassResponse.C:69 AddTaskEmcalJetMassResponse.C:70 AddTaskEmcalJetMassResponse.C:71 AddTaskEmcalJetMassResponse.C:72 AddTaskEmcalJetMassResponse.C:73 AddTaskEmcalJetMassResponse.C:74 AddTaskEmcalJetMassResponse.C:75 AddTaskEmcalJetMassResponse.C:76 AddTaskEmcalJetMassResponse.C:77 AddTaskEmcalJetMassResponse.C:78