ToolHandleArray of Service: Problem with initializer-list
While working on some ATLAS code, I discovered that ToolHandleArrays used by Services can't be constructed with the initializer-list syntax.
I get:
/home/wlampl/master2/athena/Database/AthenaPOOL/AthenaPoolCnvSvc/src/AthenaPoolCnvSvc.h:191:92: required from here
/cvmfs/atlas-nightlies.cern.ch/repo/sw/master_Athena_x86_64-centos7-gcc8-opt/2020-04-26T2145/GAUDI/22.0.13/InstallArea/x86_64-centos7-gcc8-opt/include/GaudiKernel/ToolHandle.h:390:12: error: 'class AthenaPoolCnvSvc' has no member named 'addToolsArray'
owner->addToolsArray( *this );
And indeed, grep'ing for addToolsArray
in the Gaudi-repo:
GaudiKernel/Gaudi/Algorithm.h: addToolsArray( hndlArr );
GaudiKernel/Gaudi/Algorithm.h: void addToolsArray( ToolHandleArray<T>& hndlArr ) {
GaudiKernel/GaudiKernel/AlgTool.h: addToolsArray( hndlArr );
GaudiKernel/GaudiKernel/AlgTool.h: void addToolsArray( ToolHandleArray<T>& hndlArr ) {
GaudiKernel/GaudiKernel/ToolHandle.h: owner->addToolsArray( *this );
GaudiKernel/GaudiKernel/ToolHandle.h: owner->addToolsArray( *this );
Algorithms and AlgTools have an addToolsArray
method, but Services do not have it.
- Walter