]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGJE/EMCALJetTasks/macros/AddTaskJetResponseMaker.C
move EMCALJetTasks from PWGGA to PWGJE
[u/mrichter/AliRoot.git] / PWGJE / EMCALJetTasks / macros / AddTaskJetResponseMaker.C
CommitLineData
5193b38c 1// $Id$
2
3AliJetResponseMaker* AddTaskJetResponseMaker(
4 const char *taskname = "AliJetResponseMaker",
5 const char *ntracks = "Tracks",
6 const char *nclusters = "CaloClusters",
7 const char *njets = "Jets",
8 const char *nmcjets = "MCJets",
9 const char *nmctracks = "MCParticles",
10 Double_t jetradius = 0.4,
11 Double_t jetptcut = 1,
ceefbfbc 12 Double_t jetareacut = 0.8,
5193b38c 13 Double_t ptcut = 0.15,
14 Double_t jetBiasTrack = 10,
15 Double_t jetBiasClus = 10,
2bddb6ae 16 Double_t maxDistance = 0.25,
5193b38c 17 UInt_t type = AliAnalysisTaskEmcal::kTPC
18)
19{
20 // Get the pointer to the existing analysis manager via the static access method.
21 //==============================================================================
22 AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
23 if (!mgr)
24 {
25 ::Error("AddTaskJetResponseMaker", "No analysis manager to connect to.");
26 return NULL;
27 }
28
29 // Check the analysis type using the event handlers connected to the analysis manager.
30 //==============================================================================
31 if (!mgr->GetInputEventHandler())
32 {
33 ::Error("AddTaskJetResponseMaker", "This task requires an input event handler");
34 return NULL;
35 }
36
37 //-------------------------------------------------------
38 // Init the task and do settings
39 //-------------------------------------------------------
40
41 AliJetResponseMaker* jetTask = new AliJetResponseMaker(taskname);
42 jetTask->SetAnaType(type);
43 jetTask->SetTracksName(ntracks);
44 jetTask->SetClusName(nclusters);
45 jetTask->SetJetsName(njets);
46 jetTask->SetMCJetsName(nmcjets);
47 jetTask->SetMCTracksName(nmctracks);
48 jetTask->SetPtCut(ptcut);
49 jetTask->SetJetRadius(jetradius);
50 jetTask->SetJetPtCut(jetptcut);
ceefbfbc 51 jetTask->SetPercAreaCut(jetareacut);
5193b38c 52 jetTask->SetPtBiasJetTrack(jetBiasTrack);
53 jetTask->SetPtBiasJetClus(jetBiasClus);
2bddb6ae 54 jetTask->SetMaxDistance(maxDistance);
5193b38c 55
56 //-------------------------------------------------------
57 // Final settings, pass to manager and set the containers
58 //-------------------------------------------------------
59
60 mgr->AddTask(jetTask);
61
62 // Create containers for input/output
63 AliAnalysisDataContainer *cinput1 = mgr->GetCommonInputContainer() ;
64 TString contname(taskname);
65 contname += "_histos";
66 AliAnalysisDataContainer *coutput1 = mgr->CreateContainer(contname.Data(),
67 TList::Class(),AliAnalysisManager::kOutputContainer,
68 Form("%s", AliAnalysisManager::GetCommonFileName()));
69 mgr->ConnectInput (jetTask, 0, cinput1 );
70 mgr->ConnectOutput (jetTask, 1, coutput1 );
71
72 return jetTask;
73}