1 AliAnalysisTaskExtractCascade *AddTaskExtractCascade( Bool_t lSwitchIsNuclear = kFALSE,
2 Bool_t lSwitchINT7 = kFALSE,
3 const TString lMasterJobSessionFlag = "")
5 // Creates, configures and attaches to the train a cascades check task.
6 // Get the pointer to the existing analysis manager via the static access method.
7 //==============================================================================
8 AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
10 ::Error("AddTaskExtractCascade", "No analysis manager to connect to.");
14 // Check the analysis type using the event handlers connected to the analysis manager.
15 //==============================================================================
16 if (!mgr->GetInputEventHandler()) {
17 ::Error("AddTaskExtractCascade", "This task requires an input event handler");
20 TString type = mgr->GetInputEventHandler()->GetDataType(); // can be "ESD" or "AOD"
22 // Create and configure the task
23 AliAnalysisTaskExtractCascade *taskextract = new AliAnalysisTaskExtractCascade("taskextract");
26 taskextract -> SetIsNuclear ( lSwitchIsNuclear );
27 taskextract -> SetINT7Trigger ( lSwitchINT7 );
29 mgr->AddTask(taskextract);
31 TString outputFileName = AliAnalysisManager::GetCommonFileName();
33 outputFileName += ":PWGLFExtractCascade";
34 //if (lSwitchIsNuclear) outputFileName += "_AA";
35 outputFileName += "_PP";
36 if (mgr->GetMCtruthEventHandler()) outputFileName += "_MC";
37 //if(lMasterJobSessionFlag.Length()) outputFileName += lMasterJobSessionFlag.Data();
39 Printf("Set OutputFileName : \n %s\n", outputFileName.Data() );
41 AliAnalysisDataContainer *coutputList = mgr->CreateContainer("clist",
43 AliAnalysisManager::kOutputContainer,
45 AliAnalysisDataContainer *coutputTreeCascade = mgr->CreateContainer("cTreeCascade",
47 AliAnalysisManager::kOutputContainer,
50 //This one you should merge in file-resident ways...
51 coutputTreeCascade->SetSpecialOutput();
53 //Recommendation: Tree as a single output slot
54 mgr->ConnectInput( taskextract, 0, mgr->GetCommonInputContainer());
55 mgr->ConnectOutput(taskextract, 1, coutputList);
56 mgr->ConnectOutput(taskextract, 2, coutputTreeCascade);