// $Id$
AliEmcalClusTrackMatcherTask* AddTaskEmcalClusTrackMatcher(
const char *nTracks = "EmcalTracks",
const char *nClusters = "EmcalClusters",
const Double_t maxDist = 0.1,
const Bool_t modify = kTRUE,
const Bool_t createHisto = kFALSE
)
{
// Get the pointer to the existing analysis manager via the static access method.
//==============================================================================
AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
if (!mgr)
{
::Error("AddTaskEmcalClusTrackMatcher", "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("AddTaskEmcalClusTrackMatcher", "This task requires an input event handler");
return NULL;
}
//-------------------------------------------------------
// Init the task and do settings
//-------------------------------------------------------
TString name(Form("ClusTrackMatcher_%s_%s",nTracks,nClusters));
AliEmcalClusTrackMatcherTask* matcher = new AliEmcalClusTrackMatcherTask(name, createHisto);
matcher->AddParticleContainer(nTracks);
matcher->AddParticleContainer(nClusters);
matcher->SetMaxDistance(maxDist);
matcher->SetModifyObjs(modify);
//-------------------------------------------------------
// Final settings, pass to manager and set the containers
//-------------------------------------------------------
mgr->AddTask(matcher);
// Create containers for input/output
AliAnalysisDataContainer *cinput1 = mgr->GetCommonInputContainer() ;
mgr->ConnectInput (matcher, 0, cinput1 );
if (createHisto) {
TString contname(name);
contname += "_histos";
AliAnalysisDataContainer *coutput = mgr->CreateContainer(contname,
TList::Class(),
AliAnalysisManager::kOutputContainer,
AliAnalysisManager::GetCommonFileName());
mgr->ConnectOutput(matcher,1,coutput);
}
return matcher;
}
AddTaskEmcalClusTrackMatcher.C:1 AddTaskEmcalClusTrackMatcher.C:2 AddTaskEmcalClusTrackMatcher.C:3 AddTaskEmcalClusTrackMatcher.C:4 AddTaskEmcalClusTrackMatcher.C:5 AddTaskEmcalClusTrackMatcher.C:6 AddTaskEmcalClusTrackMatcher.C:7 AddTaskEmcalClusTrackMatcher.C:8 AddTaskEmcalClusTrackMatcher.C:9 AddTaskEmcalClusTrackMatcher.C:10 AddTaskEmcalClusTrackMatcher.C:11 AddTaskEmcalClusTrackMatcher.C:12 AddTaskEmcalClusTrackMatcher.C:13 AddTaskEmcalClusTrackMatcher.C:14 AddTaskEmcalClusTrackMatcher.C:15 AddTaskEmcalClusTrackMatcher.C:16 AddTaskEmcalClusTrackMatcher.C:17 AddTaskEmcalClusTrackMatcher.C:18 AddTaskEmcalClusTrackMatcher.C:19 AddTaskEmcalClusTrackMatcher.C:20 AddTaskEmcalClusTrackMatcher.C:21 AddTaskEmcalClusTrackMatcher.C:22 AddTaskEmcalClusTrackMatcher.C:23 AddTaskEmcalClusTrackMatcher.C:24 AddTaskEmcalClusTrackMatcher.C:25 AddTaskEmcalClusTrackMatcher.C:26 AddTaskEmcalClusTrackMatcher.C:27 AddTaskEmcalClusTrackMatcher.C:28 AddTaskEmcalClusTrackMatcher.C:29 AddTaskEmcalClusTrackMatcher.C:30 AddTaskEmcalClusTrackMatcher.C:31 AddTaskEmcalClusTrackMatcher.C:32 AddTaskEmcalClusTrackMatcher.C:33 AddTaskEmcalClusTrackMatcher.C:34 AddTaskEmcalClusTrackMatcher.C:35 AddTaskEmcalClusTrackMatcher.C:36 AddTaskEmcalClusTrackMatcher.C:37 AddTaskEmcalClusTrackMatcher.C:38 AddTaskEmcalClusTrackMatcher.C:39 AddTaskEmcalClusTrackMatcher.C:40 AddTaskEmcalClusTrackMatcher.C:41 AddTaskEmcalClusTrackMatcher.C:42 AddTaskEmcalClusTrackMatcher.C:43 AddTaskEmcalClusTrackMatcher.C:44 AddTaskEmcalClusTrackMatcher.C:45 AddTaskEmcalClusTrackMatcher.C:46 AddTaskEmcalClusTrackMatcher.C:47 AddTaskEmcalClusTrackMatcher.C:48 AddTaskEmcalClusTrackMatcher.C:49 AddTaskEmcalClusTrackMatcher.C:50 AddTaskEmcalClusTrackMatcher.C:51 AddTaskEmcalClusTrackMatcher.C:52 AddTaskEmcalClusTrackMatcher.C:53 AddTaskEmcalClusTrackMatcher.C:54 AddTaskEmcalClusTrackMatcher.C:55 AddTaskEmcalClusTrackMatcher.C:56 AddTaskEmcalClusTrackMatcher.C:57 AddTaskEmcalClusTrackMatcher.C:58 AddTaskEmcalClusTrackMatcher.C:59 AddTaskEmcalClusTrackMatcher.C:60