// $Id$
AliAnalysisTaskDcalDijetPerf* AddTaskDcalDijetPerf(
const char *ntracks = "Tracks",
const char *nclusters = "CaloClusters",
const char *njets = "Jets",
const char *njets2 = "Jets2",
const char *njets3 = "Jets3",
const char *nrho = "Rho",
Int_t nCentBins = 1,
Double_t jetradius = 0.2,
Double_t jetradius2 = 0.2,
Double_t jetradius3 = 0.2,
Double_t jetptcut = 1,
Double_t jetareacut = 0.6,
const char *type = "TPC",
Int_t leadhadtype = 0,
const char *taskname = "AliAnalysisTaskDcalDijetPerf"
)
{
// Get the pointer to the existing analysis manager via the static access method.
//==============================================================================
AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
if (!mgr)
{
::Error("AddTaskDcalDijetPerf", "No analysis manager to connect to.");
return NULL;
}
// Check the analysis type using the event handlers connected to the analysis manager.
//==============================================================================
if (!mgr->GetInputEventHandler())
{
::Error("AddTaskDcalDijetPerf", "This task requires an input event handler");
return NULL;
}
//-------------------------------------------------------
// Init the task and do settings
//-------------------------------------------------------
TString name(taskname);
if (strcmp(njets,"")) {
name += "_";
name += njets;
}
if (strcmp(njets2,"")) {
name += "_";
name += njets2;
}
if (strcmp(njets3,"")) {
name += "_";
name += njets3;
}
if (strcmp(nrho,"")) {
name += "_";
name += nrho;
}
if (strcmp(type,"")) {
name += "_";
name += type;
}
Printf("name: %s",name.Data());
AliAnalysisTaskDcalDijetPerf* jetTask = new AliAnalysisTaskDcalDijetPerf(name);
jetTask->SetCentRange(0.,100.);
jetTask->SetNCentBins(nCentBins);
AliParticleContainer *trackCont = jetTask->AddParticleContainer(ntracks);
trackCont->SetClassName("AliVTrack");
AliClusterContainer *clusterCont = jetTask->AddClusterContainer(nclusters);
TString strType(type);
AliJetContainer *jetCont = jetTask->AddJetContainer(njets,strType,jetradius);
AliJetContainer *jetCont2 = jetTask->AddJetContainer(njets2,strType,jetradius2);
AliJetContainer *jetCont3 = jetTask->AddJetContainer(njets3,strType,jetradius3);
if(jetCont) {
jetCont->SetRhoName(nrho);
jetCont->ConnectParticleContainer(trackCont);
jetCont->ConnectClusterContainer(clusterCont);
//jetCont->SetZLeadingCut(0.98,0.98);
//jetCont->SetPercAreaCut(0.6);
jetCont->SetJetPtCut(jetptcut);
jetCont->SetLeadingHadronType(leadhadtype);
}
if(jetCont2) {
jetCont2->SetRhoName(nrho);
jetCont2->ConnectParticleContainer(trackCont);
jetCont2->ConnectClusterContainer(clusterCont);
//jetCont->SetZLeadingCut(0.98,0.98);
//jetCont->SetPercAreaCut(0.6);
jetCont2->SetJetPtCut(jetptcut);
jetCont2->SetLeadingHadronType(leadhadtype);
}
if(jetCont3) {
jetCont3->SetRhoName(nrho);
jetCont3->ConnectParticleContainer(trackCont);
jetCont3->ConnectClusterContainer(clusterCont);
//jetCont->SetZLeadingCut(0.98,0.98);
//jetCont->SetPercAreaCut(0.6);
jetCont3->SetJetPtCut(jetptcut);
jetCont3->SetLeadingHadronType(leadhadtype);
}
//-------------------------------------------------------
// Final settings, pass to manager and set the containers
//-------------------------------------------------------
mgr->AddTask(jetTask);
// Create containers for input/output
AliAnalysisDataContainer *cinput1 = mgr->GetCommonInputContainer() ;
TString contname(name);
contname += "_histos";
AliAnalysisDataContainer *coutput1 = mgr->CreateContainer(contname.Data(),
TList::Class(),AliAnalysisManager::kOutputContainer,
Form("%s", AliAnalysisManager::GetCommonFileName()));
mgr->ConnectInput (jetTask, 0, cinput1 );
mgr->ConnectOutput (jetTask, 1, coutput1 );
return jetTask;
}
AliAnalysisTaskDcalDijetPerf* AddTaskDcalDijetPerf( AliEmcalJetTask* jetFinderTask,
Int_t nCentBins = 1,
Double_t jetareacut = 0.6,
const char *type = "EMCAL",
Int_t leadhadtype = 0,
const char *taskname = "AliAnalysisTaskDcalDijetPerf"
)
{
const char* ntracks = jetFinderTask->GetTracksName();
const char* nclusters = jetFinderTask->GetClusName();
const char* njets = jetFinderTask->GetJetsName();
const char* nrho = jetFinderTask->GetRhoName();
Double_t jetradius = jetFinderTask->GetRadius();
Double_t jetptcut = jetFinderTask->GetMinJetPt();
AliAnalysisTaskDcalDijetPerf* jetTask = AddTaskDcalDijetPerf(ntracks , nclusters, njets, nrho, nCentBins, jetradius, jetptcut, jetareacut, type, leadhadtype, taskname);
return jetTask;
}
AddTaskDcalDijetPerf.C:10 AddTaskDcalDijetPerf.C:11 AddTaskDcalDijetPerf.C:12 AddTaskDcalDijetPerf.C:13 AddTaskDcalDijetPerf.C:14 AddTaskDcalDijetPerf.C:15 AddTaskDcalDijetPerf.C:16 AddTaskDcalDijetPerf.C:17 AddTaskDcalDijetPerf.C:18 AddTaskDcalDijetPerf.C:19 AddTaskDcalDijetPerf.C:20 AddTaskDcalDijetPerf.C:21 AddTaskDcalDijetPerf.C:22 AddTaskDcalDijetPerf.C:23 AddTaskDcalDijetPerf.C:24 AddTaskDcalDijetPerf.C:25 AddTaskDcalDijetPerf.C:26 AddTaskDcalDijetPerf.C:27 AddTaskDcalDijetPerf.C:28 AddTaskDcalDijetPerf.C:29 AddTaskDcalDijetPerf.C:30 AddTaskDcalDijetPerf.C:31 AddTaskDcalDijetPerf.C:32 AddTaskDcalDijetPerf.C:33 AddTaskDcalDijetPerf.C:34 AddTaskDcalDijetPerf.C:35 AddTaskDcalDijetPerf.C:36 AddTaskDcalDijetPerf.C:37 AddTaskDcalDijetPerf.C:38 AddTaskDcalDijetPerf.C:39 AddTaskDcalDijetPerf.C:40 AddTaskDcalDijetPerf.C:41 AddTaskDcalDijetPerf.C:42 AddTaskDcalDijetPerf.C:43 AddTaskDcalDijetPerf.C:44 AddTaskDcalDijetPerf.C:45 AddTaskDcalDijetPerf.C:46 AddTaskDcalDijetPerf.C:47 AddTaskDcalDijetPerf.C:48 AddTaskDcalDijetPerf.C:49 AddTaskDcalDijetPerf.C:50 AddTaskDcalDijetPerf.C:51 AddTaskDcalDijetPerf.C:52 AddTaskDcalDijetPerf.C:53 AddTaskDcalDijetPerf.C:54 AddTaskDcalDijetPerf.C:55 AddTaskDcalDijetPerf.C:56 AddTaskDcalDijetPerf.C:57 AddTaskDcalDijetPerf.C:58 AddTaskDcalDijetPerf.C:59 AddTaskDcalDijetPerf.C:60 AddTaskDcalDijetPerf.C:61 AddTaskDcalDijetPerf.C:62 AddTaskDcalDijetPerf.C:63 AddTaskDcalDijetPerf.C:64 AddTaskDcalDijetPerf.C:65 AddTaskDcalDijetPerf.C:66 AddTaskDcalDijetPerf.C:67 AddTaskDcalDijetPerf.C:68 AddTaskDcalDijetPerf.C:69 AddTaskDcalDijetPerf.C:70 AddTaskDcalDijetPerf.C:71 AddTaskDcalDijetPerf.C:72 AddTaskDcalDijetPerf.C:73 AddTaskDcalDijetPerf.C:74 AddTaskDcalDijetPerf.C:75 AddTaskDcalDijetPerf.C:76 AddTaskDcalDijetPerf.C:77 AddTaskDcalDijetPerf.C:78 AddTaskDcalDijetPerf.C:79 AddTaskDcalDijetPerf.C:80 AddTaskDcalDijetPerf.C:81 AddTaskDcalDijetPerf.C:82 AddTaskDcalDijetPerf.C:83 AddTaskDcalDijetPerf.C:84 AddTaskDcalDijetPerf.C:85 AddTaskDcalDijetPerf.C:86 AddTaskDcalDijetPerf.C:87 AddTaskDcalDijetPerf.C:88 AddTaskDcalDijetPerf.C:89 AddTaskDcalDijetPerf.C:90 AddTaskDcalDijetPerf.C:91 AddTaskDcalDijetPerf.C:92 AddTaskDcalDijetPerf.C:93 AddTaskDcalDijetPerf.C:94 AddTaskDcalDijetPerf.C:95 AddTaskDcalDijetPerf.C:96 AddTaskDcalDijetPerf.C:97 AddTaskDcalDijetPerf.C:98 AddTaskDcalDijetPerf.C:99 AddTaskDcalDijetPerf.C:100 AddTaskDcalDijetPerf.C:101 AddTaskDcalDijetPerf.C:102 AddTaskDcalDijetPerf.C:103 AddTaskDcalDijetPerf.C:104 AddTaskDcalDijetPerf.C:105 AddTaskDcalDijetPerf.C:106 AddTaskDcalDijetPerf.C:107 AddTaskDcalDijetPerf.C:108 AddTaskDcalDijetPerf.C:109 AddTaskDcalDijetPerf.C:110 AddTaskDcalDijetPerf.C:111 AddTaskDcalDijetPerf.C:112 AddTaskDcalDijetPerf.C:113 AddTaskDcalDijetPerf.C:114 AddTaskDcalDijetPerf.C:115 AddTaskDcalDijetPerf.C:116 AddTaskDcalDijetPerf.C:117 AddTaskDcalDijetPerf.C:118 AddTaskDcalDijetPerf.C:119 AddTaskDcalDijetPerf.C:120 AddTaskDcalDijetPerf.C:121 AddTaskDcalDijetPerf.C:122 AddTaskDcalDijetPerf.C:123 AddTaskDcalDijetPerf.C:124 AddTaskDcalDijetPerf.C:125 AddTaskDcalDijetPerf.C:126 AddTaskDcalDijetPerf.C:127 AddTaskDcalDijetPerf.C:128 AddTaskDcalDijetPerf.C:129 AddTaskDcalDijetPerf.C:130 AddTaskDcalDijetPerf.C:131 AddTaskDcalDijetPerf.C:132 AddTaskDcalDijetPerf.C:133 AddTaskDcalDijetPerf.C:134 AddTaskDcalDijetPerf.C:135 AddTaskDcalDijetPerf.C:136 AddTaskDcalDijetPerf.C:137 AddTaskDcalDijetPerf.C:138 AddTaskDcalDijetPerf.C:139 AddTaskDcalDijetPerf.C:140 AddTaskDcalDijetPerf.C:141 AddTaskDcalDijetPerf.C:142 AddTaskDcalDijetPerf.C:143 AddTaskDcalDijetPerf.C:144 AddTaskDcalDijetPerf.C:145 AddTaskDcalDijetPerf.C:146