3 AliAnalysisTaskSATR* AddTaskSATR(
4 const char* triggerType = "L0",
5 AliAnalysisTaskEMCALClusterizeFast *clusterizer = 0,
6 AliAnalysisTaskEMCALClusterizeFast *trgClusterizer = 0)
8 // Get the pointer to the existing analysis manager via the static access method.
9 //==============================================================================
10 AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
13 ::Error("AddTaskSATR", "No analysis manager to connect to.");
17 // Check the analysis type using the event handlers connected to the analysis manager.
18 //==============================================================================
19 if (!mgr->GetInputEventHandler())
21 ::Error("AddTaskSATR", "This task requires an input event handler");
25 //-------------------------------------------------------
26 // Init the task and do settings
27 //-------------------------------------------------------
29 TString caloClusName, trgClusName, taskName;
30 if (!strcmp(triggerType, "L0")) {
31 caloClusName = "ClustersL0FEE";
32 trgClusName = "ClustersL0FOR";
33 taskName = "TriggerAnaL0";
35 else if (!strcmp(triggerType, "L1GAMMA")) {
36 caloClusName = "ClustersL1GAMMAFEE";
37 trgClusName = "ClustersL1GAMMAFOR";
38 taskName = "TriggerAnaL1GAMMA";
40 else if (!strcmp(triggerType, "L1JET")) {
41 caloClusName = "ClustersL1JETFEE";
42 trgClusName = "ClustersL1JETFOR";
43 taskName = "TriggerAnaL1JET";
46 AliAnalysisTaskSATR* task = new AliAnalysisTaskSATR(taskName.Data());
47 task->SetTimeCutOn(kTRUE);
48 task->SetL0TimeCut(-20, 20);
49 task->SetClusTimeCut(-1, 1);
50 task->SetCheckDeadClusters(kFALSE);
51 task->SetLoadPed(kFALSE);
52 task->SetCaloClustersName(caloClusName.Data());
53 task->SetTriggerClustersName(trgClusName.Data());
54 task->SetClusterizer(clusterizer);
55 task->SetTriggerClusterizer(trgClusterizer);
56 task->SetCutL0Amp(-1, 999);
57 task->SetCutClusEnergy(-1, 999);
59 //-------------------------------------------------------
60 // Final settings, pass to manager and set the containers
61 //-------------------------------------------------------
64 // Create containers for input/output
65 AliAnalysisDataContainer *cinput1 = mgr->GetCommonInputContainer() ;
67 AliAnalysisDataContainer *coutput1 = mgr->CreateContainer("coutput",
68 TList::Class(),AliAnalysisManager::kOutputContainer,
69 Form("%s", AliAnalysisManager::GetCommonFileName()));
70 mgr->ConnectInput (task, 0, cinput1 );
71 mgr->ConnectOutput (task, 1, coutput1 );