- AliAnalysisTask::OpenFile(i) opens and returns the file for the container
connected at task output slot <i>. Works also in PROOF mode now.
- Added kSpecialOutput user-settable flag to AliAnalysisDataContainer. Output
containers that are to be dumped to a special file will be copied in PROOF mode from each
slave to a default remote location specified via AliAnalysisManager::SetSpecialOutputLocation()
File names will be prepended with the host name of the slave they were produced on.
One needs to open the special file in MyTask::CreateOutputObjects():
OpenFile(iout_slot)
The files on the slaves will be closed by the system in SlaveTerminate phase.
Ex:
MyAnalysis.C
{
mgr = new AliAnalysisManager("demo","");
mgr->SetSpecialOutputLocation("root://lxb0000.cern.ch//alien/alice/"); // xrootd location
MyTask *task = new MyTask();
mgr->AddTask(task);
// Create output container to be written in file sptree.root
AliAnalysisDataContainer *coutput1 = mgr->CreateContainer("csp_tree", TTree::Class(), AliAnalysisManager::kOutputContainer, "sptree.root");
coutput1->SetSpecialOutput();
mgr->ConnectOutput(task,3,coutput1); // connect container to output #3 of MyTask
...
mgr->StartAnalysis("proof", chain,...);
}