Skip to content

Attribute unmet INPUT dependencies to a DataLoader Algorithm [updated]

Charles Leggett requested to merge leggett/Gaudi:dev/AutoDataLoad into master

If there are any unmet INPUT dependencies, and the Property<string> UseDataLoader is not blank, then the Scheduler will look for an Algorithm with that name, and call addDependency( DataObjID, Gaudi::DataHandle::Writer) for all unmet input deps, which is a new function of DataHandleHolderBase.

The implication of this, is that during DataLoader::execute(), the Algorithm will have to loop over the outputDataObjs(), and do something sensible with them, like read them from disk, or just tell the whiteboard that they're present.

I have refactored the DataHandleHolderBase to move the member variables m_inputDataObjs and m_outputDataObjs from Algorithm and AlgTool into it, as well as the accessors inputDataObjs() and outputDataObjs(), as it makes more sense to put them there, and saves duplication in Algorithm and AlgTool.

Merge request reports