1 AliAnalysisTaskCheckHFMCProd *AddHFMCCheck(Int_t system=0, Bool_t readMC=kTRUE){
3 // Creates, configures and attaches to the train the task for QA of ITS standalone tracks
4 // Get the pointer to the existing analysis manager via the static access method.
5 //==============================================================================
6 AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
8 ::Error("AliAnalysisTaskCheckHFMCProd", "No analysis manager to connect to.");
12 // Check the analysis type using the event handlers connected to the analysis manager.
13 //==============================================================================
14 if (!mgr->GetInputEventHandler()) {
15 ::Error("AliAnalysisTaskCheckHFMCProd", "This task requires an input event handler");
19 TString type = mgr->GetInputEventHandler()->GetDataType(); // can be "ESD" or "AOD"
20 if(type.Contains("AOD")){
21 ::Error("AliAnalysisTaskCheckHFMCProd", "This task requires to run on ESD");
26 //if (mgr->GetMCtruthEventHandler()) isMC=kTRUE;
28 // Add MC handler (for kinematics)
30 AliMCEventHandler* handler = new AliMCEventHandler;
31 handler->SetReadTR(kFALSE);
32 mgr->SetMCtruthEventHandler(handler);
34 // Create and configure the task
35 AliAnalysisTaskCheckHFMCProd *task = new AliAnalysisTaskCheckHFMCProd();
36 if(system==1) task->SetPbPb();
37 if(system==2) task->SetpPb();
38 task->SetReadMC(readMC);
41 // Create ONLY the output containers for the data produced by the task.
42 // Get and connect other common input/output containers via the manager as below
43 //==============================================================================
44 TString outputFileName = AliAnalysisManager::GetCommonFileName();
45 outputFileName += ":HFMCCheck";
47 AliAnalysisDataContainer *coutput1 = mgr->CreateContainer("clistHFMCCheck",
49 AliAnalysisManager::kOutputContainer,
52 mgr->ConnectInput(task, 0, mgr->GetCommonInputContainer());
53 mgr->ConnectOutput(task, 1, coutput1);