// $Id$
AliEmcalTriggerMaker* AddTaskEmcalTriggerMaker(
const char *triggersOutName = "EmcalTriggers",
const char *triggerSetupOutName = "EmcalTriggerSetup",
const char *cellsName = 0,
const char *triggersName = 0,
const char *taskName = "AliEmcalTriggerMaker",
int jetLowA = 0,
int jetLowB = 0,
int jetLowC = 0,
int jetHighA = 0,
int jetHighB = 0,
int jetHighC = 0,
bool useOldBitConfig = kFALSE,
bool doQA = kFALSE
)
{
// Get the pointer to the existing analysis manager via the static access method.
//==============================================================================
AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
if (!mgr)
{
::Error("AddTaskEmcalTriggerMaker", "No analysis manager to connect to.");
return NULL;
}
// Check the analysis type using the event handlers connected to the analysis manager.
//==============================================================================
AliVEventHandler *evhand = mgr->GetInputEventHandler();
if (!evhand) {
::Error("AddTaskEmcalTriggerMaker", "This task requires an input event handler");
return NULL;
}
TString strTriggersName(triggersName);
TString strCellsName(cellsName);
if(strTriggersName.IsNull()) {
if (evhand->InheritsFrom("AliESDInputHandler")) {
strTriggersName = "EMCALTrigger";
::Info("AddTaskEmcalTriggerMaker", Form( "ESD analysis, triggersName = \"%s\"", strTriggersName.Data() ));
}
else {
strTriggersName = "emcalTrigger";
::Info("AddTaskEmcalTriggerMaker", Form( "AOD analysis, triggersName = \"%s\"", strTriggersName.Data() ));
}
}
if(strCellsName.IsNull()) {
if (evhand->InheritsFrom("AliESDInputHandler")) {
strCellsName = "EMCALCells";
::Info("AddTaskEmcalTriggerMaker", Form( "ESD analysis, cellsName = \"%s\"", strCellsName.Data() ));
}
else {
strCellsName = "emcalCells";
::Info("AddTaskEmcalTriggerMaker", Form( "AOD analysis, cellsName = \"%s\"", strCellsName.Data() ));
}
}
char *v0Name;
v0Name = new char[100];
if (evhand->InheritsFrom("AliESDInputHandler")) {
strcpy(v0Name,"AliESDVZERO");
::Info("AddTaskEmcalTriggerMaker", Form( "ESD analysis, v0Name = \"%s\"", v0Name ));
}
else {
strcpy(v0Name,"AliAODVZERO");
::Info("AddTaskEmcalTriggerMaker", Form( "AOD analysis, v0Name = \"%s\"", v0Name ));
}
//-------------------------------------------------------
// Init the task and do settings
//-------------------------------------------------------
AliEmcalTriggerMaker *eTask = new AliEmcalTriggerMaker(taskName, doQA);
eTask->SetCaloTriggersName(strTriggersName.Data());
eTask->SetCaloTriggersOutName(triggersOutName);
eTask->SetCaloTriggerSetupOutName(triggerSetupOutName);
eTask->SetCaloCellsName(strCellsName.Data());
eTask->SetV0InName(v0Name);
eTask->SetTriggerThresholdJetLow( jetLowA, jetLowB, jetLowC );
eTask->SetTriggerThresholdJetHigh( jetHighA, jetHighB, jetHighC );
if (useOldBitConfig)
eTask->SetUseTriggerBitConfig(AliEmcalTriggerMaker::kOldConfig);
//-------------------------------------------------------
// Final settings, pass to manager and set the containers
//-------------------------------------------------------
mgr->AddTask(eTask);
// Create containers for input/output
AliAnalysisDataContainer *cinput1 = mgr->GetCommonInputContainer();
mgr->ConnectInput (eTask, 0, cinput1 );
if(doQA){
TString commonoutput = mgr->GetCommonFileName();
commonoutput += ":TriggerQA";
mgr->ConnectOutput(eTask, 1, mgr->CreateContainer("TriggerQA", TList::Class(), AliAnalysisManager::kOutputContainer, commonoutput.Data()));
}
return eTask;
}
AddTaskEmcalTriggerMaker.C:1 AddTaskEmcalTriggerMaker.C:2 AddTaskEmcalTriggerMaker.C:3 AddTaskEmcalTriggerMaker.C:4 AddTaskEmcalTriggerMaker.C:5 AddTaskEmcalTriggerMaker.C:6 AddTaskEmcalTriggerMaker.C:7 AddTaskEmcalTriggerMaker.C:8 AddTaskEmcalTriggerMaker.C:9 AddTaskEmcalTriggerMaker.C:10 AddTaskEmcalTriggerMaker.C:11 AddTaskEmcalTriggerMaker.C:12 AddTaskEmcalTriggerMaker.C:13 AddTaskEmcalTriggerMaker.C:14 AddTaskEmcalTriggerMaker.C:15 AddTaskEmcalTriggerMaker.C:16 AddTaskEmcalTriggerMaker.C:17 AddTaskEmcalTriggerMaker.C:18 AddTaskEmcalTriggerMaker.C:19 AddTaskEmcalTriggerMaker.C:20 AddTaskEmcalTriggerMaker.C:21 AddTaskEmcalTriggerMaker.C:22 AddTaskEmcalTriggerMaker.C:23 AddTaskEmcalTriggerMaker.C:24 AddTaskEmcalTriggerMaker.C:25 AddTaskEmcalTriggerMaker.C:26 AddTaskEmcalTriggerMaker.C:27 AddTaskEmcalTriggerMaker.C:28 AddTaskEmcalTriggerMaker.C:29 AddTaskEmcalTriggerMaker.C:30 AddTaskEmcalTriggerMaker.C:31 AddTaskEmcalTriggerMaker.C:32 AddTaskEmcalTriggerMaker.C:33 AddTaskEmcalTriggerMaker.C:34 AddTaskEmcalTriggerMaker.C:35 AddTaskEmcalTriggerMaker.C:36 AddTaskEmcalTriggerMaker.C:37 AddTaskEmcalTriggerMaker.C:38 AddTaskEmcalTriggerMaker.C:39 AddTaskEmcalTriggerMaker.C:40 AddTaskEmcalTriggerMaker.C:41 AddTaskEmcalTriggerMaker.C:42 AddTaskEmcalTriggerMaker.C:43 AddTaskEmcalTriggerMaker.C:44 AddTaskEmcalTriggerMaker.C:45 AddTaskEmcalTriggerMaker.C:46 AddTaskEmcalTriggerMaker.C:47 AddTaskEmcalTriggerMaker.C:48 AddTaskEmcalTriggerMaker.C:49 AddTaskEmcalTriggerMaker.C:50 AddTaskEmcalTriggerMaker.C:51 AddTaskEmcalTriggerMaker.C:52 AddTaskEmcalTriggerMaker.C:53 AddTaskEmcalTriggerMaker.C:54 AddTaskEmcalTriggerMaker.C:55 AddTaskEmcalTriggerMaker.C:56 AddTaskEmcalTriggerMaker.C:57 AddTaskEmcalTriggerMaker.C:58 AddTaskEmcalTriggerMaker.C:59 AddTaskEmcalTriggerMaker.C:60 AddTaskEmcalTriggerMaker.C:61 AddTaskEmcalTriggerMaker.C:62 AddTaskEmcalTriggerMaker.C:63 AddTaskEmcalTriggerMaker.C:64 AddTaskEmcalTriggerMaker.C:65 AddTaskEmcalTriggerMaker.C:66 AddTaskEmcalTriggerMaker.C:67 AddTaskEmcalTriggerMaker.C:68 AddTaskEmcalTriggerMaker.C:69 AddTaskEmcalTriggerMaker.C:70 AddTaskEmcalTriggerMaker.C:71 AddTaskEmcalTriggerMaker.C:72 AddTaskEmcalTriggerMaker.C:73 AddTaskEmcalTriggerMaker.C:74 AddTaskEmcalTriggerMaker.C:75 AddTaskEmcalTriggerMaker.C:76 AddTaskEmcalTriggerMaker.C:77 AddTaskEmcalTriggerMaker.C:78 AddTaskEmcalTriggerMaker.C:79 AddTaskEmcalTriggerMaker.C:80 AddTaskEmcalTriggerMaker.C:81 AddTaskEmcalTriggerMaker.C:82 AddTaskEmcalTriggerMaker.C:83 AddTaskEmcalTriggerMaker.C:84 AddTaskEmcalTriggerMaker.C:85 AddTaskEmcalTriggerMaker.C:86 AddTaskEmcalTriggerMaker.C:87 AddTaskEmcalTriggerMaker.C:88 AddTaskEmcalTriggerMaker.C:89 AddTaskEmcalTriggerMaker.C:90 AddTaskEmcalTriggerMaker.C:91 AddTaskEmcalTriggerMaker.C:92 AddTaskEmcalTriggerMaker.C:93 AddTaskEmcalTriggerMaker.C:94 AddTaskEmcalTriggerMaker.C:95 AddTaskEmcalTriggerMaker.C:96 AddTaskEmcalTriggerMaker.C:97 AddTaskEmcalTriggerMaker.C:98 AddTaskEmcalTriggerMaker.C:99 AddTaskEmcalTriggerMaker.C:100 AddTaskEmcalTriggerMaker.C:101 AddTaskEmcalTriggerMaker.C:102 AddTaskEmcalTriggerMaker.C:103