1 AliAnalysisTaskCheckPerformanceCascade *AddTaskCheckPerformanceCascade(Short_t lCollidingSystems=0 /*0 = pp, 1 = AA*/,
2 const TString lMasterJobSessionFlag = "")
4 // Creates, configures and attaches to the train a cascades check task.
5 // Get the pointer to the existing analysis manager via the static access method.
6 //==============================================================================
7 AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
9 ::Error("AddTaskCheckPerformanceCascade", "No analysis manager to connect to.");
13 // Check the analysis type using the event handlers connected to the analysis manager.
14 //==============================================================================
15 if (!mgr->GetInputEventHandler()) {
16 ::Error("AddTaskCheckPerformanceCascade", "This task requires an input event handler");
19 TString type = mgr->GetInputEventHandler()->GetDataType(); // can be "ESD" or "AOD"
21 // Create and configure the task
22 AliAnalysisTaskCheckPerformanceCascade *taskCheckPerfCascade = new AliAnalysisTaskCheckPerformanceCascade("TaskCheckPerfCascade");
23 taskCheckPerfCascade->SetCollidingSystems (lCollidingSystems);
24 taskCheckPerfCascade->SetAnalysisType (type);
26 taskCheckPerfCascade-> SetRelaunchV0CascVertexers (0); //NOTE
27 taskCheckPerfCascade-> SetQualityCutZprimVtxPos (kTRUE);
28 taskCheckPerfCascade-> SetQualityCutNoTPConlyPrimVtx (kTRUE);
29 taskCheckPerfCascade-> SetQualityCutTPCrefit (kTRUE);
30 taskCheckPerfCascade-> SetQualityCut80TPCcls (kTRUE);
31 // taskCheckPerfCascade-> SetExtraSelections (0);
34 mgr->AddTask(taskCheckPerfCascade);
36 // Create ONLY the output containers for the data produced by the task.
37 // Get and connect other common input/output containers via the manager as below
38 //==============================================================================
40 // User file name (if need be)
42 TString DefaultCommonFileName = AliAnalysisManager::GetCommonFileName();
44 if(DefaultCommonFileName == "AnalysisResults.root"){
45 // Just change the Common File name IF it was not change before
46 // -> To avoid screwing-up the analysis train and send the output of the previous task to a non-existing file
47 TString lCommonFileName = "sLHC09-CheckPerfCascade";
48 if(lMasterJobSessionFlag.Length()){
49 lCommonFileName += "-";
50 lCommonFileName += lMasterJobSessionFlag.Data();
52 lCommonFileName += ".root";
54 mgr->SetCommonFileName( lCommonFileName.Data() );
58 TString outputFileName = AliAnalysisManager::GetCommonFileName();
59 outputFileName += ":PWG2CheckPerformanceCascade";
60 if (lCollidingSystems) outputFileName += "_AA_";
61 else outputFileName += "_PP";
62 if (mgr->GetMCtruthEventHandler()) outputFileName += "_MC";
63 //if(lMasterJobSessionFlag.Length()) outputFileName += lMasterJobSessionFlag.Data();
65 Printf("AddTaskCheckPerfCascade - Set OutputFileName : \n %s\n", outputFileName.Data() );
67 AliAnalysisDataContainer *coutput1 = mgr->CreateContainer("clistCascMC",
69 AliAnalysisManager::kOutputContainer,
72 mgr->ConnectInput( taskCheckPerfCascade, 0, mgr->GetCommonInputContainer());
73 mgr->ConnectOutput(taskCheckPerfCascade, 1, coutput1);
75 return taskCheckPerfCascade;