]>
Commit | Line | Data |
---|---|---|
0651dd18 | 1 | AliESDtrackCuts *CreateCuts(Int_t iCut = 0); // create the standard cuts\r |
0651dd18 | 2 | AliAnalysisTaskESDfilter *AddTaskESDfilter()\r |
3 | {\r | |
4 | // Creates a jet fider task, configures it and adds it to the analysis manager.\r | |
5 | \r | |
6 | // Get the pointer to the existing analysis manager via the static access method.\r | |
7 | //==============================================================================\r | |
8 | AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();\r | |
9 | if (!mgr) {\r | |
10 | ::Error("AddTaskESDFilter", "No analysis manager to connect to.");\r | |
11 | return NULL;\r | |
12 | } \r | |
13 | \r | |
14 | // Check the analysis type using the event handlers connected to the analysis manager.\r | |
15 | //==============================================================================\r | |
16 | if (!mgr->GetInputEventHandler()) {\r | |
17 | ::Error("AddTaskESDFilter", "This task requires an input event handler");\r | |
18 | return NULL;\r | |
19 | }\r | |
20 | \r | |
21 | // Create the task and configure it.\r | |
22 | //===========================================================================\r | |
23 | \r | |
24 | AliAnalysisFilter* trackFilter = new AliAnalysisFilter("trackFilter");\r | |
25 | trackFilter->AddCuts(CreateCuts(0));\r | |
26 | \r | |
27 | AliAnalysisTaskESDfilter *esdfilter = new AliAnalysisTaskESDfilter("ESD Filter");\r | |
28 | esdfilter->SetTrackFilter(trackFilter);\r | |
29 | mgr->AddTask(esdfilter);\r | |
30 | \r | |
31 | // Create ONLY the output containers for the data produced by the task.\r | |
32 | // Get and connect other common input/output containers via the manager as below\r | |
33 | //==============================================================================\r | |
34 | mgr->ConnectInput (esdfilter, 0, mgr->GetCommonInputContainer());\r | |
35 | mgr->ConnectOutput (esdfilter, 0, mgr->GetCommonOutputContainer());\r | |
36 | return esdfilter;\r | |
37 | }\r | |
38 | \r | |
bebe25a4 | 39 | AliAnalysisTaskESDfilter *AddTaskESDfilter(AliAnalysisManager* mgr,AliAnalysisDataContainer *cinput, AliAnalysisDataContainer *cout_aod)\r |
0651dd18 | 40 | {\r |
41 | // This is only for running on PROOF with the old root version 5-22-00 \r | |
42 | // and the older version of the AF\r | |
43 | \r | |
44 | // Get the pointer to the existing analysis manager via the static access method.\r | |
45 | //==============================================================================\r | |
46 | AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();\r | |
47 | if (!mgr) {\r | |
48 | ::Error("AddTaskESDFilter", "No analysis manager to connect to.");\r | |
49 | return NULL;\r | |
50 | } \r | |
51 | \r | |
52 | // Check the analysis type using the event handlers connected to the analysis manager.\r | |
53 | //==============================================================================\r | |
54 | if (!mgr->GetInputEventHandler()) {\r | |
55 | ::Error("AddTaskESDFilter", "This task requires an input event handler");\r | |
56 | return NULL;\r | |
57 | }\r | |
58 | \r | |
59 | // Create the task and configure it.\r | |
60 | //===========================================================================\r | |
61 | AliAnalysisFilter* trackFilter = new AliAnalysisFilter("trackFilter");\r | |
62 | trackFilter->AddCuts(CreateCuts(0));\r | |
63 | //\r | |
64 | // ESD filter task putting standard info to output AOD (with cuts)\r | |
65 | AliAnalysisTaskESDfilter *esdfilter = new AliAnalysisTaskESDfilter("ESD Filter");\r | |
66 | esdfilter->SetTrackFilter(trackFilter);\r | |
67 | mgr->AddTask(esdfilter);\r | |
68 | \r | |
0651dd18 | 69 | // Connect to data containers\r |
70 | mgr->ConnectInput (esdfilter, 0, cinput );\r | |
bebe25a4 | 71 | mgr->ConnectOutput (esdfilter, 0, cout_aod );\r |
0651dd18 | 72 | \r |
73 | return esdfilter;\r | |
74 | \r | |
75 | } \r | |
76 | \r | |
77 | AliESDtrackCuts *CreateCuts(Int_t iCut){\r | |
78 | AliESDtrackCuts* esdTrackCuts = 0; \r | |
79 | if(iCut == 0){\r | |
80 | esdTrackCuts = new AliESDtrackCuts("AliESDtrackCuts", "Loose");\r | |
81 | esdTrackCuts->SetMinNClustersTPC(50); \r | |
82 | esdTrackCuts->SetMaxChi2PerClusterTPC(3.5);\r | |
83 | esdTrackCuts->SetMaxCovDiagonalElements(2,2,0.5,0.5,2);\r | |
84 | esdTrackCuts->SetRequireTPCRefit(kTRUE);\r | |
ba146e16 | 85 | esdTrackCuts->SetMaxNsigmaToVertex(3);\r |
0651dd18 | 86 | esdTrackCuts->SetRequireSigmaToVertex(kTRUE);\r |
87 | esdTrackCuts->SetAcceptKingDaughters(kFALSE);\r | |
88 | }\r | |
89 | \r | |
90 | return esdTrackCuts;\r | |
91 | \r | |
92 | }\r |