]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG2/KINK/macros/AddTaskKinkResonance.C
Update for Kink tasks from Evi Ganoti
[u/mrichter/AliRoot.git] / PWG2 / KINK / macros / AddTaskKinkResonance.C
CommitLineData
65f7c00b 1AliAnalysisTaskKinkResonance *AddTaskKinkResonance(Short_t lCollidingSystems=0 /*0 = pp, 1 = AA*/)
e3475d46 2{
f9afc48d 3// Creates, configures and attaches to the train a kink resonance task.
4// Get the pointer to the existing analysis manager via the static access method.
5//==============================================================================
6AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
7 if (!mgr) {
8 ::Error("AddTaskKinkResonanceKstar", "No analysis manager to connect to.");
9return NULL;
10}
e3475d46 11
f9afc48d 12// Check the analysis type using the event handlers connected to the analysis manager.
13//==============================================================================
14if (!mgr->GetInputEventHandler()) {
15 ::Error("AddTaskKinkResonanceKstar", "This task requires an input event handler");
16 return NULL;
17}
18TString type = mgr->GetInputEventHandler()->GetDataType(); // can be "ESD" or "AOD"
19 if (type != "ESD") {
20 ::Error("AddTaskKinkResonanceKstar", "This task needs an ESD input handler");
21return NULL;
22}
23if (!mgr->GetMCtruthEventHandler()) {
24 ::Error("AddTaskKinkResonanceKstar", "This task needs an MC handler");
25 return NULL;
26}
e3475d46 27
f9afc48d 28// Setup the analysis object
29
30 AliResonanceKink *kinkResonanceObject=new AliResonanceKink();
31 kinkResonanceObject->InitOutputHistograms(60, 0.6, 1.2);
32 kinkResonanceObject->SetPDGCodes(kKPlus, kPiPlus, AliResonanceKink::kKstar0);
33 kinkResonanceObject->SetAnalysisType("ESD"); // "ESD" or "MC"
92adf4f6 34 kinkResonanceObject->SetMaxNsigmaToVertex(4.0);
35 kinkResonanceObject->SetMaxDCAxy(3.0);
36 kinkResonanceObject->SetMaxDCAzaxis(3.0);
37 kinkResonanceObject->SetPtTrackCut(0.25);
38 kinkResonanceObject->SetMinTPCclusters(50);
39 kinkResonanceObject->SetMaxChi2PerTPCcluster(3.5);
40 kinkResonanceObject->SetMaxCov0(2.0);
41 kinkResonanceObject->SetMaxCov2(2.0);
42 kinkResonanceObject->SetMaxCov5(0.5);
43 kinkResonanceObject->SetMaxCov9(0.5);
44 kinkResonanceObject->SetMaxCov14(2.0);
e3475d46 45
f9afc48d 46// Create and configure the task
47AliAnalysisTaskKinkResonance *taskresonanceKstar = new AliAnalysisTaskKinkResonance("TaskResKinkPID");
48taskresonanceKstar->SetAnalysisKinkObject(kinkResonanceObject);
49mgr->AddTask(taskresonanceKstar);
50
51// Create ONLY the output containers for the data produced by the task.
52// Get and connect other common input/output containers via the manager as below
53//==============================================================================
54TString outname = "PP";
55if (lCollidingSystems) outname = "AA";
56if (mgr->GetMCtruthEventHandler()) outname += "-MC-";
57outname += "KinkResonanceList.root";
58AliAnalysisDataContainer *coutput1 = mgr->CreateContainer("KinkResKstar",
59 TList::Class(),
60 AliAnalysisManager::kOutputContainer,
61 outname );
62
63mgr->ConnectInput(taskresonanceKstar, 0, mgr->GetCommonInputContainer());
64mgr->ConnectOutput(taskresonanceKstar, 1, coutput1);
65return taskresonanceKstar;
66}