1 AliAnalysisTaskJetChem *AddTaskJetChem(){
3 AliAnalysisTaskJetChem *ff=0;
5 ff = AddTask("clustersAOD_ANTIKT04_B1_Filter00256_Cut00150_Skip00",0,AliAnalysisTaskJetChem::kOnFly);
10 // _______________________________________________________________________________________
12 AliAnalysisTaskJetChem *AddTask(const char* recJetsBranch,Int_t eventClass, Int_t K0type)
14 // Creates a jet chem task,
15 // configures it and adds it to the analysis manager.
18 // Get the pointer to the existing analysis manager via the static access method.
19 //==============================================================================
20 AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
22 ::Error("AddTaskJetChem", "No analysis manager to connect to.");
26 // Check the analysis type using the event handlers connected to the analysis manager.
27 //==============================================================================
28 if (!mgr->GetInputEventHandler()) {
29 ::Error("AddTaskJetChem", "This task requires an input event handler");
33 TString type = mgr->GetInputEventHandler()->GetDataType(); // can be "ESD" or "AOD"
34 Printf("Data Type: %s", type.Data());
37 // Create the task and configure it.
38 //===========================================================================
39 AliAnalysisTaskJetChem *task = new AliAnalysisTaskJetChem("bla");
41 Int_t debug = -1; // debug level
42 if(debug>=0) task->SetDebugLevel(debug);
44 TString branchRecJets(recJetsBranch);
45 if(!branchRecJets.Contains("noRecJets")) task->SetBranchRecJets(branchRecJets);
47 task->SetFilterMask(256); // for h+/h-
48 task->SetEventClass(eventClass);
50 task->SetK0Type(K0type);
52 if(K0type == AliAnalysisTaskJetChem::kOnFlyPrim || AliAnalysisTaskJetChem::kOfflPrim) task->SetFilterMaskK0(256);
56 task->SetTrackCuts(0.15, -0.75, 0.75, 0., 2*TMath::Pi());
57 task->SetJetCuts(5., -0.35, 0.35, 0., 2*TMath::Pi());
60 task->SetFFHistoBins();
61 task->SetQATrackHistoBins();
62 task->SetFFInvMassHistoBins();
63 task->SetPhiCorrInvMassHistoBins();
67 // Create ONLY the output containers for the data produced by the task.
68 // Get and connect other common input/output containers via the manager as below
69 //==============================================================================
72 if(K0type == AliAnalysisTaskJetChem::kOnFly) strK0type = "OnFly";
73 if(K0type == AliAnalysisTaskJetChem::kOnFlyPID) strK0type = "OnFlyPID";
74 if(K0type == AliAnalysisTaskJetChem::kOnFlydEdx) strK0type = "OnFlydEdx";
75 if(K0type == AliAnalysisTaskJetChem::kOnFlyPrim) strK0type = "OnFlyPrim";
76 if(K0type == AliAnalysisTaskJetChem::kOffl) strK0type = "Offl";
77 if(K0type == AliAnalysisTaskJetChem::kOfflPID) strK0type = "OfflPID";
78 if(K0type == AliAnalysisTaskJetChem::kOffldEdx) strK0type = "OffldEdx";
79 if(K0type == AliAnalysisTaskJetChem::kOfflPrim) strK0type = "OfflPrim";
81 TString listName(Form("PWG4_JetChem_%s_%s_cl%d",branchRecJets.Data(),strK0type.Data(),eventClass));
83 AliAnalysisDataContainer *coutput_FragFunc = mgr->CreateContainer(listName,
85 AliAnalysisManager::kOutputContainer,
86 Form("%s:PWG4_JetChem",AliAnalysisManager::GetCommonFileName()));
88 mgr->ConnectInput (task, 0, mgr->GetCommonInputContainer());
89 mgr->ConnectOutput (task, 1, coutput_FragFunc);