]>
Commit | Line | Data |
---|---|---|
aac12889 | 1 | /* created by fbellini@cern.ch on 14/09/2010 */ |
4170635c | 2 | /* last modified by fbellini on 11/11/2011 */ |
aac12889 | 3 | |
cf7778cf | 4 | AliAnalysisTaskSE * AddTaskTOFQA(Bool_t flagEnableAdvancedCheck=kFALSE, |
5 | UInt_t triggerMask = AliVEvent::kAnyINT, | |
6 | Int_t trackCutSetTOFqa = 0, | |
7 | TString cutName = "") | |
aac12889 | 8 | { |
9 | // Task for checking TOF QA | |
10 | ||
11 | AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager(); | |
12 | if (!mgr) { | |
13 | ::Error("AddTask", "No analysis manager to connect to."); | |
14 | return NULL; | |
15 | } | |
16 | ||
17 | // Check the analysis type using the event handlers connected to the analysis manager. | |
aac12889 | 18 | if (!mgr->GetInputEventHandler()) { |
e866f574 | 19 | ::Error("AddTask", "This task requires an input event handler"); |
aac12889 | 20 | return NULL; |
21 | } | |
22 | TString inputDataType = mgr->GetInputEventHandler()->GetDataType(); // can be "ESD" or "AOD" | |
4170635c | 23 | |
aac12889 | 24 | // Create the task |
25 | AliAnalysisTaskTOFqa *task = new AliAnalysisTaskTOFqa("taskTOFqa"); | |
4170635c | 26 | task->EnableAdvancedCheck(flagEnableAdvancedCheck); |
cf7778cf | 27 | task->SelectCollisionCandidates(triggerMask); |
aac12889 | 28 | //AliLog::SetClassDebugLevel("AliAnalysisTaskTOFqa",1); |
29 | mgr->AddTask(task); | |
30 | ||
e866f574 | 31 | /* cuts used for QA in 2010 p-p */ |
cf7778cf | 32 | //Define track cut set |
33 | AliESDtrackCuts* esdTrackCuts = new AliESDtrackCuts("AliESDtrackCuts", "TrackCutsTOFqa"); | |
aac12889 | 34 | AliAnalysisFilter* trackFilter = new AliAnalysisFilter("trackFilter"); |
cf7778cf | 35 | |
36 | if ( (trackCutSetTOFqa<0) || (trackCutSetTOFqa>=AliAnalysisTaskTOFqaID::kNCutSetTOFqa) ) trackCutSetTOFqa = 0; | |
37 | ||
38 | if ( trackCutSetTOFqa == AliAnalysisTaskTOFqaID::kRun1Cuts ) { | |
39 | //use track cuts used for QA during run1 (before July 2014) | |
40 | esdTrackCuts->SetMinNClustersTPC(70); | |
41 | esdTrackCuts->SetMaxChi2PerClusterTPC(4); | |
42 | esdTrackCuts->SetAcceptKinkDaughters(kFALSE); | |
43 | esdTrackCuts->SetRequireTPCRefit(kTRUE); | |
44 | esdTrackCuts->SetRequireITSRefit(kTRUE); | |
45 | esdTrackCuts->SetClusterRequirementITS(AliESDtrackCuts::kSPD, | |
46 | AliESDtrackCuts::kAny); | |
47 | esdTrackCuts->SetMaxDCAToVertexXYPtDep("0.0182+0.0350/pt^1.01");//selects primaries | |
48 | esdTrackCuts->SetMaxDCAToVertexZ(2); | |
49 | esdTrackCuts->SetDCAToVertex2D(kFALSE); | |
50 | esdTrackCuts->SetRequireSigmaToVertex(kFALSE); | |
51 | } else { | |
52 | if ( trackCutSetTOFqa == AliAnalysisTaskTOFqaID::kStd2010 ) esdTrackCuts->GetStandardITSTPCTrackCuts2010(kTRUE,0); | |
53 | if ( trackCutSetTOFqa == AliAnalysisTaskTOFqaID::kStd2010crossedRows ) esdTrackCuts->GetStandardITSTPCTrackCuts2010(kTRUE,1); | |
54 | if ( trackCutSetTOFqa == AliAnalysisTaskTOFqaID::kStd2011) esdTrackCuts->GetStandardITSTPCTrackCuts2011(kTRUE,0); | |
55 | if ( trackCutSetTOFqa == AliAnalysisTaskTOFqaID::kStd2011crossedRows ) esdTrackCuts->GetStandardITSTPCTrackCuts2011(kTRUE,1); | |
56 | } | |
57 | ||
58 | trackFilter->AddCuts(esdTrackCuts); | |
59 | task->SetTrackFilter(trackFilter); | |
aac12889 | 60 | |
61 | // Create containers for input/output | |
62 | AliAnalysisDataContainer *cInputTOFqa = mgr->CreateContainer("cInputTOFqa",TChain::Class(),AliAnalysisManager::kInputContainer); | |
cf7778cf | 63 | AliAnalysisDataContainer *cGeneralTOFqa = mgr->CreateContainer(Form("cGeneralTOFqa%s",cutName.Data()),TList::Class(),AliAnalysisManager::kOutputContainer,Form("%s:TOF_Performance",mgr->GetCommonFileName())); |
64 | AliAnalysisDataContainer *cTimeZeroTOFqa = mgr->CreateContainer(Form("cTimeZeroTOFqa%s",cutName.Data()),TList::Class(),AliAnalysisManager::kOutputContainer,Form("%s:TOF_Performance",mgr->GetCommonFileName())); | |
65 | AliAnalysisDataContainer *cPIDTOFqa = mgr->CreateContainer(Form("cPIDTOFqa%s",cutName.Data()),TList::Class(),AliAnalysisManager::kOutputContainer,Form("%s:TOF_Performance",mgr->GetCommonFileName())); | |
66 | AliAnalysisDataContainer *cPosTracksTOFqa = mgr->CreateContainer(Form("cPosTracksTOFqa%s",cutName.Data()),TList::Class(),AliAnalysisManager::kOutputContainer,Form("%s:TOF_Performance",mgr->GetCommonFileName())); | |
67 | AliAnalysisDataContainer *cNegTracksTOFqa = mgr->CreateContainer(Form("cNegTracksTOFqa%s",cutName.Data()),TList::Class(),AliAnalysisManager::kOutputContainer,Form("%s:TOF_Performance",mgr->GetCommonFileName())); | |
4170635c | 68 | |
aac12889 | 69 | // Attach i/o |
70 | mgr->ConnectInput(task, 0,mgr->GetCommonInputContainer()); | |
e866f574 | 71 | mgr->ConnectOutput(task, 1, cGeneralTOFqa); |
72 | mgr->ConnectOutput(task, 2, cTimeZeroTOFqa); | |
73 | mgr->ConnectOutput(task, 3, cPIDTOFqa); | |
4170635c | 74 | mgr->ConnectOutput(task, 4, cPosTracksTOFqa); |
75 | mgr->ConnectOutput(task, 5, cNegTracksTOFqa); | |
aac12889 | 76 | return task; |
77 | } |