asg::UnitTestService1 Node1 asg::UnitTestService1 + m_isInitialized + m_propertyInt + m_initializeFail + UnitTestService1() + ~UnitTestService1() + initialize() + getPropertyString() + getPropertyInt() + setPropertyInt() + isInitialized() + instance_counts() Node2 asg::IUnitTestService1 + DeclareInterfaceID() + getPropertyString() + getPropertyInt() + setPropertyInt() + isInitialized() Node2->Node1 Node3 asg::IAsgService + print() Node3->Node2 Node5 asg::AsgService + AsgService() + print() + declareServiceInterface() + queryInterface() * initialize() * finalize() Node3->Node5 Node4 INamedInterface Node4->Node3 Node5->Node1 Node6 AsgServiceBase - AthService() - AthService() - operator=() Node6->Node5 Node7 AthCommonMsg< Service > + msg() + msg() + msgLvl() Node7->Node6 Node9 std::vector< std::pair < const InterfaceID & (*)(), void *(*)(asg::AsgService *)> > + elements Node9->Node5 -m_interfaces Node10 std::string Node10->Node1 +m_propertyString Node11 std::basic_string< char > Node11->Node10