// $Id$
AliEmcalClusterMaker* AddTaskEmcalClusterMaker(
const UInt_t nonLinFunct = AliEMCALRecoUtils::kBeamTestCorrected,
const Bool_t remExClus = kTRUE,
const char *nClusters = 0,
const char *outClusName = "EmcCaloClusters",
const Double_t emin = 0.3,
const Bool_t histo = kFALSE,
const char *outputname = "AnalysisResults.root"
)
{
// Get the pointer to the existing analysis manager via the static access method.
//==============================================================================
AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
if (!mgr)
{
::Error("AddTaskHadCorr", "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("AddTaskHadCorr", "This task requires an input event handler");
return NULL;
}
TString inputDataType = mgr->GetInputEventHandler()->GetDataType(); // can be "ESD" or "AOD"
TString nCells = "emcalCells";
if (inputDataType == "ESD")
nCells = "EMCALCells";
if (nClusters==0) {
if (inputDataType != "ESD")
nClusters = "caloClusters";
else
nClusters = "CaloClusters";
}
//-------------------------------------------------------
// Init the task and do settings
//-------------------------------------------------------
TString name(Form("EmcalClusterMaker_%s_%s", nClusters, outClusName));
AliEmcalClusterMaker *ecm = new AliEmcalClusterMaker(name, histo);
ecm->SetOutClusName(outClusName);
ecm->SetCaloCellsName(nCells);
AliEMCALRecoUtils *ru = new AliEMCALRecoUtils;
ru->SetNonLinearityFunction(nonLinFunct);
if(remExClus) ru->SwitchOnRejectExoticCluster();
ecm->SetRecoUtils(ru);
AliClusterContainer *clusCont = ecm->AddClusterContainer(nClusters);
clusCont->SetClusECut(emin);
//-------------------------------------------------------
// Final settings, pass to manager and set the containers
//-------------------------------------------------------
mgr->AddTask(ecm);
// Create containers for input/output
mgr->ConnectInput (ecm, 0, mgr->GetCommonInputContainer());
if (histo) {
AliAnalysisDataContainer *coecm = mgr->CreateContainer(name,
TList::Class(),
AliAnalysisManager::kOutputContainer,
outputname);
mgr->ConnectOutput(ecm,1,coecm);
}
return ecm;
}
AddTaskEmcalClusterMaker.C:1 AddTaskEmcalClusterMaker.C:2 AddTaskEmcalClusterMaker.C:3 AddTaskEmcalClusterMaker.C:4 AddTaskEmcalClusterMaker.C:5 AddTaskEmcalClusterMaker.C:6 AddTaskEmcalClusterMaker.C:7 AddTaskEmcalClusterMaker.C:8 AddTaskEmcalClusterMaker.C:9 AddTaskEmcalClusterMaker.C:10 AddTaskEmcalClusterMaker.C:11 AddTaskEmcalClusterMaker.C:12 AddTaskEmcalClusterMaker.C:13 AddTaskEmcalClusterMaker.C:14 AddTaskEmcalClusterMaker.C:15 AddTaskEmcalClusterMaker.C:16 AddTaskEmcalClusterMaker.C:17 AddTaskEmcalClusterMaker.C:18 AddTaskEmcalClusterMaker.C:19 AddTaskEmcalClusterMaker.C:20 AddTaskEmcalClusterMaker.C:21 AddTaskEmcalClusterMaker.C:22 AddTaskEmcalClusterMaker.C:23 AddTaskEmcalClusterMaker.C:24 AddTaskEmcalClusterMaker.C:25 AddTaskEmcalClusterMaker.C:26 AddTaskEmcalClusterMaker.C:27 AddTaskEmcalClusterMaker.C:28 AddTaskEmcalClusterMaker.C:29 AddTaskEmcalClusterMaker.C:30 AddTaskEmcalClusterMaker.C:31 AddTaskEmcalClusterMaker.C:32 AddTaskEmcalClusterMaker.C:33 AddTaskEmcalClusterMaker.C:34 AddTaskEmcalClusterMaker.C:35 AddTaskEmcalClusterMaker.C:36 AddTaskEmcalClusterMaker.C:37 AddTaskEmcalClusterMaker.C:38 AddTaskEmcalClusterMaker.C:39 AddTaskEmcalClusterMaker.C:40 AddTaskEmcalClusterMaker.C:41 AddTaskEmcalClusterMaker.C:42 AddTaskEmcalClusterMaker.C:43 AddTaskEmcalClusterMaker.C:44 AddTaskEmcalClusterMaker.C:45 AddTaskEmcalClusterMaker.C:46 AddTaskEmcalClusterMaker.C:47 AddTaskEmcalClusterMaker.C:48 AddTaskEmcalClusterMaker.C:49 AddTaskEmcalClusterMaker.C:50 AddTaskEmcalClusterMaker.C:51 AddTaskEmcalClusterMaker.C:52 AddTaskEmcalClusterMaker.C:53 AddTaskEmcalClusterMaker.C:54 AddTaskEmcalClusterMaker.C:55 AddTaskEmcalClusterMaker.C:56 AddTaskEmcalClusterMaker.C:57 AddTaskEmcalClusterMaker.C:58 AddTaskEmcalClusterMaker.C:59 AddTaskEmcalClusterMaker.C:60 AddTaskEmcalClusterMaker.C:61 AddTaskEmcalClusterMaker.C:62 AddTaskEmcalClusterMaker.C:63 AddTaskEmcalClusterMaker.C:64 AddTaskEmcalClusterMaker.C:65 AddTaskEmcalClusterMaker.C:66 AddTaskEmcalClusterMaker.C:67 AddTaskEmcalClusterMaker.C:68 AddTaskEmcalClusterMaker.C:69 AddTaskEmcalClusterMaker.C:70 AddTaskEmcalClusterMaker.C:71 AddTaskEmcalClusterMaker.C:72 AddTaskEmcalClusterMaker.C:73 AddTaskEmcalClusterMaker.C:74 AddTaskEmcalClusterMaker.C:75 AddTaskEmcalClusterMaker.C:76 AddTaskEmcalClusterMaker.C:77