]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG/EMCAL/macros/AddTaskEmcalPicoTrackMaker.C
added a few more datasets
[u/mrichter/AliRoot.git] / PWG / EMCAL / macros / AddTaskEmcalPicoTrackMaker.C
1 // $Id$
2
3 AliEmcalPicoTrackMaker* AddTaskEmcalPicoTrackMaker(
4   const char *name       = "PicoTracks",
5   const char *inname     = "tracks",
6   const char *runPeriod  = "",
7   AliESDtrackCuts *cuts  = 0
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("AddTaskEmcalPicoTrackMaker", "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("AddTaskEmcalPicoTrackMaker", "This task requires an input event handler");
24     return NULL;
25   }
26   
27   //-------------------------------------------------------
28   // Init the task and do settings
29   //-------------------------------------------------------
30
31   AliEmcalPicoTrackMaker *eTask = new AliEmcalPicoTrackMaker();
32   eTask->SetTracksOutName(name);
33   eTask->SetTracksInName(inname);
34   if (!strcmp(runPeriod, "LHC11h")) {
35     eTask->SetAODfilterBits(256,512); // hybrid tracks for LHC11h
36   }
37   else if (!strcmp(runPeriod, "LHC11a") || !strcmp(runPeriod, "LHC12a15a") || !strcmp(runPeriod, "LHC12a15e")) {
38     eTask->SetAODfilterBits(256,16); // hybrid tracks for LHC11a, LHC12a15a and LHC12a15e
39   }
40   else {
41     if (strcmp(runPeriod, ""))
42       ::Warning(Form("Run period %s not known. It will use IsHybridGlobalConstrainedGlobal.", runPeriod));
43   }
44   eTask->SetESDtrackCuts(cuts);
45
46   //-------------------------------------------------------
47   // Final settings, pass to manager and set the containers
48   //-------------------------------------------------------
49   mgr->AddTask(eTask);
50   
51   // Create containers for input/output
52   AliAnalysisDataContainer *cinput1  = mgr->GetCommonInputContainer();
53   mgr->ConnectInput  (eTask, 0,  cinput1 );
54   
55   return eTask;
56 }