]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG1/TOF/AddTaskTOFQA.C
Do not call to use the event pointer before the analysis starts
[u/mrichter/AliRoot.git] / PWG1 / TOF / AddTaskTOFQA.C
CommitLineData
aac12889 1/* created by fbellini@cern.ch on 14/09/2010 */
e866f574 2/* last modified by fbellini on 08/03/2010 */
aac12889 3
4#include "AliAnalysisTaskTOFqa.h"
5AliAnalysisTaskSE * AddTaskTOFQA()
6{
7 // Task for checking TOF QA
8
9 AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
10 if (!mgr) {
11 ::Error("AddTask", "No analysis manager to connect to.");
12 return NULL;
13 }
14
15 // Check the analysis type using the event handlers connected to the analysis manager.
16 //==============================================================================
17 if (!mgr->GetInputEventHandler()) {
e866f574 18 ::Error("AddTask", "This task requires an input event handler");
aac12889 19 return NULL;
20 }
21 TString inputDataType = mgr->GetInputEventHandler()->GetDataType(); // can be "ESD" or "AOD"
22
23 // Configure analysis
24 //===========================================================================
25 // Create the task
26 AliAnalysisTaskTOFqa *task = new AliAnalysisTaskTOFqa("taskTOFqa");
27 //AliLog::SetClassDebugLevel("AliAnalysisTaskTOFqa",1);
28 mgr->AddTask(task);
29
30 //--------------- set the filtering ------------
31 // Barrel Tracks
e866f574 32
33 /* cuts used for QA in 2010 p-p */
34 AliESDtrackCuts* esdTrackCutsLoose2010 = new AliESDtrackCuts("AliESDtrackCuts", "esdTrackCutsLoose2010");
35 esdTrackCutsL->SetMinNClustersTPC(70);
36 esdTrackCutsL->SetMaxChi2PerClusterTPC(3.5);
37 esdTrackCutsL->SetMaxCovDiagonalElements(2, 2, 0.5, 0.5, 2);
38 esdTrackCutsL->SetRequireTPCRefit(kTRUE);
39 esdTrackCutsL->SetMaxDCAToVertexXY(3.0);
40 esdTrackCutsL->SetMaxDCAToVertexZ(3.0);
41 esdTrackCutsL->SetRequireSigmaToVertex(kTRUE);
42 esdTrackCutsL->SetAcceptKinkDaughters(kFALSE);
aac12889 43 esdTrackCutsL->SetMaxNsigmaToVertex(4.0);
e866f574 44
45 /* standard cuts ITS-TPC 2010 */
46 AliESDtrackCuts* esdTrackCutsStd2010 = new AliESDtrackCuts("AliESDtrackCuts", "Standard2010");
47 // TPC
48 esdTrackCutsStd2010->SetMinNClustersTPC(70);
49 esdTrackCutsStd2010->SetMaxChi2PerClusterTPC(4);
50 esdTrackCutsStd2010->SetAcceptKinkDaughters(kFALSE);
51 esdTrackCutsStd2010->SetRequireTPCRefit(kTRUE);
52 // ITS
53 esdTrackCuts->SetRequireITSRefit(kTRUE);
54 esdTrackCuts->SetClusterRequirementITS(AliESDtrackCuts::kSPD,
55 AliESDtrackCuts::kAny);
56 esdTrackCuts->SetMaxDCAToVertexXYPtDep("0.0182+0.0350/pt^1.01");//selects primaries
57 esdTrackCutsStd2010->SetMaxDCAToVertexZ(2);
58 esdTrackCutsStd2010->SetDCAToVertex2D(kFALSE);
59 esdTrackCutsStd2010->SetRequireSigmaToVertex(kFALSE);
60
aac12889 61 AliAnalysisFilter* trackFilter = new AliAnalysisFilter("trackFilter");
e866f574 62 trackFilter->AddCuts(esdTrackCutsStd2010);
aac12889 63 task->SetTrackFilter(trackFilter);
64
65
66 // Create containers for input/output
67 AliAnalysisDataContainer *cInputTOFqa = mgr->CreateContainer("cInputTOFqa",TChain::Class(),AliAnalysisManager::kInputContainer);
e866f574 68 AliAnalysisDataContainer *cGeneralTOFqa = mgr->CreateContainer("cGeneralTOFqa",TList::Class(),AliAnalysisManager::kOutputContainer,Form("%s:TOF_Performance",mgr->GetCommonFileName()));
69 AliAnalysisDataContainer *cTimeZeroTOFqa = mgr->CreateContainer("cTimeZeroTOFqa",TList::Class(),AliAnalysisManager::kOutputContainer,Form("%s:TOF_Performance",mgr->GetCommonFileName()));
70 AliAnalysisDataContainer *cPIDTOFqa = mgr->CreateContainer("cPIDTOFqa",TList::Class(),AliAnalysisManager::kOutputContainer,Form("%s:TOF_Performance",mgr->GetCommonFileName()));
aac12889 71 // Attach i/o
72 mgr->ConnectInput(task, 0,mgr->GetCommonInputContainer());
e866f574 73 mgr->ConnectOutput(task, 1, cGeneralTOFqa);
74 mgr->ConnectOutput(task, 2, cTimeZeroTOFqa);
75 mgr->ConnectOutput(task, 3, cPIDTOFqa);
aac12889 76
77 return task;
78}