EL::AsgToolWrapper Node1 EL::AsgToolWrapper - m_tool + testInvariant() + AsgToolWrapper() + AsgToolWrapper() + getName() + hasName() + makeClone() + initialize() + execute() + finalize() + fileExecute() + beginInputFile() + endInputFile() Node2 EL::IAlgorithmWrapper + ~IAlgorithmWrapper() + getName() + hasName() + makeClone() + getLegacyAlg() + initialize() + execute() + postExecute() + finalize() + fileExecute() + beginInputFile() + endInputFile() Node2->Node1 Node3 std::shared_ptr< void > + ptr + operator->() Node3->Node1 -m_cleanup Node4 asg::AsgToolConfig + AsgToolConfig() + AsgToolConfig() + AsgToolConfig() + makeTool() + makePrivateTool() + makeTool() + makePrivateTool() Node4->Node1 -m_config Node5 asg::AsgComponentConfig + AsgComponentConfig() + AsgComponentConfig() + empty() + type() + setType() + name() + setName() + typeAndName() + setTypeAndName() + setProperty() and 6 more... - checkTypeName() * accessSubtool() Node5->Node4 Node6 std::map< std::string, std::vector< std::string > > Node6->Node5 -m_toolArrays Node7 std::string Node7->Node5 -m_type -m_name Node7->Node6 +keys Node9 std::vector< std::string > Node7->Node9 +elements Node10 std::map< std::string, std::string > Node7->Node10 +elements +keys Node11 std::map< std::string, asg::details::AsgComponent PrivateToolConfig > Node7->Node11 +keys Node9->Node6 +elements Node10->Node5 -m_propertyValues Node11->Node5 -m_privateTools