Skip to content
Snippets Groups Projects
Commit f84ad021 authored by Benedikt Hegner's avatar Benedikt Hegner
Browse files

Register Tools declared in ToolHandleArray in parent Algorithm/AlgTool

data deps of Tools in ToolHandleArrays are not pushed to parent Alg/AlgTool

need to add a declareProperty(... ToolHandleArray<T> ...) to Algorithm and AlgTool, and add all ToolHandleArrays thus declared to a container that gets processed during initToolHandles. In order to avoid adding tools from Arrays that haven't been retrieved, we have to add a bool flag to the GaudiHandleArrayBase to detect if it's been retrieved. there's a bit of ugliness in extracting a ptr to an IAlgTool from the untemplated GaudiHandleArrayBase, as we have to explicitly retrieve the tool from the ToolSvc by name, but since it's already been retrieved when the Array gets retrieved, we won't be doing any new creations.

I believe that the testing for whether the retrieved tool is public or private is redundant, as I don't think you can put a Public tool into a Private ToolHandleArray (at least you can't seem to do so in ATLAS), but I left it in just in case.


See GAUDI-1190



See merge request !124
parents 02f25600 b646aea8
No related branches found
No related tags found
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment