]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGJE/macros/AddTaskJetServices.C
fix bug from last commit - Marta V.
[u/mrichter/AliRoot.git] / PWGJE / macros / AddTaskJetServices.C
CommitLineData
86dd7ebf 1AliAnalysisTaskJetServices* serv = 0;\r
74323f57 2Bool_t ConfigWithFlagsJetServices();\r
86dd7ebf 3AliAnalysisTaskJetServices *AddTaskJetServices()\r
599338e5 4{\r
5 // Get the pointer to the existing analysis manager via the static access method.\r
6 //==============================================================================\r
7 AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();\r
8 if (!mgr) {\r
9 ::Error("AddTaskJetServices", "No analysis manager to connect to.");\r
10 return NULL;\r
11 } \r
12 \r
13 // Check the analysis type using the event handlers connected to the analysis manager.\r
14 //==============================================================================\r
15 if (!mgr->GetInputEventHandler()) {\r
16 ::Error("AddTaskJetServices", "This task requires an input event handler");\r
17 return NULL;\r
18 }\r
19\r
20 TString type = mgr->GetInputEventHandler()->GetDataType();\r
21 type.ToUpper();\r
22 // Create the task and configure it.\r
23 //===========================================================================\r
24 \r
86dd7ebf 25 serv = new AliAnalysisTaskJetServices("JetServices");\r
599338e5 26 \r
27\r
28 if(type == "AOD"){\r
5c4489e2 29 serv->SetAODInput(kTRUE);\r
599338e5 30 }\r
5c4489e2 31 mgr->AddTask(serv);\r
86dd7ebf 32\r
33 // evaluate global variables \r
34 Bool_t bGood1 = false;\r
35 Bool_t bGood2 = false;\r
36\r
37\r
74323f57 38 if(!ConfigWithFlagsJetServices())return 0;\r
86dd7ebf 39 serv->SetUsePhysicsSelection(kTRUE);\r
599338e5 40 \r
41 // Create ONLY the output containers for the data produced by the task.\r
42 // Get and connect other common input/output containers via the manager as below\r
43 //==============================================================================\r
5c4489e2 44 AliAnalysisDataContainer *coutput1_Serv = mgr->CreateContainer("pwgje_services", TList::Class(),AliAnalysisManager::kOutputContainer,Form("%s:PWGJE_services",AliAnalysisManager::GetCommonFileName()));\r
599338e5 45\r
5c4489e2 46 mgr->ConnectInput (serv, 0, mgr->GetCommonInputContainer());\r
47 mgr->ConnectOutput (serv, 0, mgr->GetCommonOutputContainer());\r
48 mgr->ConnectOutput (serv, 1, coutput1_Serv );\r
599338e5 49 \r
5c4489e2 50 return serv;\r
599338e5 51}\r
86dd7ebf 52\r
74323f57 53Bool_t ConfigWithFlagsJetServices(){\r
86dd7ebf 54 \r
55 Bool_t bGood1 = kFALSE;\r
56 Bool_t bGood2 = kFALSE;\r
57\r
58\r
59 serv->SetRunRange(AliAnalysisManager::GetGlobalInt("kGridRunRangeLo",bGood1),\r
60 AliAnalysisManager::GetGlobalInt("kGridRunRangeLo",bGood2));\r
61 \r
62 if(!bGood1||!bGood2){\r
63 Printf("%s:%d Run range not set",(char*)__FILE__,__LINE__);\r
64 serv->SetRunRange(110000,160000);\r
65 }\r
66 \r
67\r
68 Int_t nTrigger = AliAnalysisManager::GetGlobalInt("kNTrigger",bGood1);\r
69 \r
70 if(bGood1){\r
71 serv->SetNTrigger(nTrigger);\r
72 for(int it = 0;it < nTrigger;it++){\r
73 serv->SetTrigger(it,\r
74 AliAnalysisManager::GetGlobalInt(Form("kTriggerBit%d",it),bGood1),\r
75 AliAnalysisManager::GetGlobalStr(Form("kTriggerName%d",it),bGood2));\r
76 }\r
77 }\r
78 \r
79 AliAnalysisManager::GetGlobalInt("kPhysicsSelectionFlag",bGood1);if(bGood1)serv->SetPhysicsSelectionFlag(AliAnalysisManager::GetGlobalInt("kPhysicsSelectionFlag",bGood1));\r
80 else {Printf("%s%d: kPhysicsSelectionFlag not defined",(char*)__FILE__,__LINE__); return kFALSE; }\r
81 AliAnalysisManager::GetGlobalStr("kDeltaAODJetName",bGood1);if(bGood1)serv->SetNonStdFile(AliAnalysisManager::GetGlobalStr("kDeltaAODJetName",bGood1));\r
82 else {Printf("%s%d: kDeltaAODJetName not defined",(char*)__FILE__,__LINE__); return kFALSE; }\r
83\r
84 AliAnalysisManager::GetGlobalDbl("kTrackEtaWindow",bGood1);if(bGood1)serv->SetTrackEtaWindow(AliAnalysisManager::GetGlobalDbl("kTrackEtaWindow",bGood1));\r
85 else {Printf("%s%d: kTrackEtaWindow not defined",(char*)__FILE__,__LINE__); return kFALSE; }\r
86 AliAnalysisManager::GetGlobalDbl("kVertexWindow",bGood1);if(bGood1)serv->SetZVertexCut(AliAnalysisManager::GetGlobalDbl("kVertexWindow",bGood1));\r
87 else {Printf("%s%d: kVertexWindow not defined",(char*)__FILE__,__LINE__); return kFALSE; }\r
88 \r
89 AliAnalysisManager::GetGlobalInt("kHighPtFilterMask",bGood1);if(bGood1)serv->SetFilterMask(AliAnalysisManager::GetGlobalInt("kHighPtFilterMask",bGood1));\r
90 else {Printf("%s%d: kHighPtFilterMask not defined",(char*)__FILE__,__LINE__); return kFALSE; } \r
91\r
92 TString cRun(AliAnalysisManager::GetGlobalStr("kJetRunPeriod",bGood1));\r
93 if(cRun.Contains("10h")||cRun.Contains("11h")){\r
94 serv->SetCollisionType(AliAnalysisTaskJetServices::kPbPb);\r
95 }\r
96 else{\r
97 serv->SetCollisionType(AliAnalysisTaskJetServices::kPP);\r
98 }\r
99 \r
100 return kTRUE;\r
101\r
102}\r