]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGJE/EMCALJetTasks/macros/AddTaskEmcalHighMultTrigger.C
Merge branch 'feature-movesplit'
[u/mrichter/AliRoot.git] / PWGJE / EMCALJetTasks / macros / AddTaskEmcalHighMultTrigger.C
1 // $Id$
2
3 AliAnalysisTaskEmcalHighMultTrigger* AddTaskEmcalHighMultTrigger(
4   const char *ntracks            = "Tracks",
5   const char *nPatches           = "EmcalPatches32x32",
6   Int_t       nCentBins          = 1,
7   const char *taskname           = "HighMultTrigger"
8 )
9 {
10   // Get the pointer to the existing analysis manager via the static access method.
11   //==============================================================================
12   AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
13   if (!mgr)
14   {
15     ::Error("AddTaskEmcalHighMultTrigger", "No analysis manager to connect to.");
16     return NULL;
17   }
18
19   // Check the analysis type using the event handlers connected to the analysis manager.
20   //==============================================================================
21   if (!mgr->GetInputEventHandler())
22   {
23     ::Error("AddTaskEmcalHighMultTrigger", "This task requires an input event handler");
24     return NULL;
25   }
26
27   //-------------------------------------------------------
28   // Init the task and do settings
29   //-------------------------------------------------------
30
31   TString name = Form("%s_%s",taskname,nPatches);
32
33   Printf("name: %s",name.Data());
34
35   AliAnalysisTaskEmcalHighMultTrigger* task = new AliAnalysisTaskEmcalHighMultTrigger(name);
36   task->SetCentRange(0.,100.);
37   task->SetNCentBins(nCentBins);
38   task->SetCaloTriggerPatchInfoName(nPatches);
39   task->SetVzRange(-10.,10.);
40   task->SetUseAliAnaUtils(kTRUE,kTRUE);//kFALSE);
41
42   AliParticleContainer *trackCont  = task->AddParticleContainer(ntracks);
43   trackCont->SetClassName("AliVTrack");
44
45   //-------------------------------------------------------
46   // Final settings, pass to manager and set the containers
47   //-------------------------------------------------------
48
49   mgr->AddTask(task);
50
51   // Create containers for input/output
52   AliAnalysisDataContainer *cinput1  = mgr->GetCommonInputContainer()  ;
53   TString contname(name);
54   contname += "_histos";
55   AliAnalysisDataContainer *coutput1 = mgr->CreateContainer(contname.Data(),
56                                                             TList::Class(),AliAnalysisManager::kOutputContainer,
57                                                             Form("%s", AliAnalysisManager::GetCommonFileName()));
58   mgr->ConnectInput  (task, 0,  cinput1 );
59   mgr->ConnectOutput (task, 1, coutput1 );
60
61   return task;
62 }
63