1 AliPhysicsSelectionTask* AddTaskPhysicsSelection(Bool_t mCAnalysisFlag = kFALSE, Bool_t deprecatedFlag = kTRUE, UInt_t computeBG = 0)
3 AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
5 ::Error("AddTaskPhysicsSelection", "No analysis manager to connect to.");
9 // Check the analysis type using the event handlers connected to the analysis manager.
10 //==============================================================================
11 if (!mgr->GetInputEventHandler()) {
12 ::Error("AddTaskPhysicsSelection", "This task requires an input event handler");
16 AliVEventHandler *inputHandler=mgr->GetInputEventHandler();
18 TString inputDataType = inputHandler->GetDataType(); // can be "ESD" or "AOD"
21 //===========================================================================
22 AliPhysicsSelectionTask *task = new AliPhysicsSelectionTask("");
24 // this makes physics selection to work using AliMultiInputEventHandler
25 if (inputHandler && (inputHandler->IsA() == AliMultiInputEventHandler::Class())) {
26 AliMultiInputEventHandler *multiInputHandler=(AliMultiInputEventHandler*)inputHandler;
27 AliInputEventHandler *ih = multiInputHandler->GetFirstInputEventHandler();
29 ::Error("AddTaskPhysicsSelection","ESD or AOD input handler is missing");
32 ih->SetEventSelection(multiInputHandler->GetEventSelection());
33 inputDataType = ih->GetDataType(); // can be "ESD" or "AOD"
38 AliPhysicsSelection* physSel = task->GetPhysicsSelection();
40 physSel->SetAnalyzeMC();
42 physSel->SetComputeBG(computeBG);
45 AliFatal("The BG ID flag is deprecated. Please use the OADB to configure the cuts");
47 AliAnalysisDataContainer *cinput0 = mgr->GetCommonInputContainer();
48 AliAnalysisDataContainer *coutput1 = mgr->CreateContainer("cstatsout",
50 AliAnalysisManager::kOutputContainer,
51 "EventStat_temp.root");
53 mgr->ConnectInput(task, 0, mgr->GetCommonInputContainer());
54 mgr->ConnectOutput(task,1,coutput1);