CP::SelectionNameSvc Node1 CP::SelectionNameSvc + SelectionNameSvc() + initialize() + addAcceptInfo() + getAcceptInfo() Node2 asg::AsgService + AsgService() + print() + declareServiceInterface() + queryInterface() * initialize() * finalize() Node2->Node1 Node3 asg::IAsgService + print() Node3->Node2 Node9 CP::ISelectionNameSvc + DeclareInterfaceID() + addAcceptInfo() + getAcceptInfo() Node3->Node9 Node4 INamedInterface Node4->Node3 Node5 AsgServiceBase - AthService() - AthService() - operator=() Node5->Node2 Node8 std::vector< std::pair < const InterfaceID & (*)(), void *(*)(asg::AsgService *)> > + elements Node8->Node2 -m_interfaces Node9->Node1 Node10 std::unordered_map < std::string, std:: unordered_map< std::string, asg::AcceptInfo > > + elements Node10->Node1 -m_acceptInfoMap Node11 std::string Node11->Node10 +keys Node13 ServiceHandle< CP:: ISystematicsSvc > Node13->Node1 -m_sysSvc