D3PDTest::Obj4GetterTool Node1 D3PDTest::Obj4GetterTool + Obj4GetterTool() Node2 D3PD::SGCollectionGetter Tool< Obj4Container > + SGCollectionGetterTool() + initialize() + typeinfo() + getUntyped() + get() Node2->Node1 Node3 D3PD::SGGetterImpl # m_typename # m_sgkey # m_clidsvc # m_resolver - m_clid - m_sg + SGGetterImpl() + typeinfo() + clid() + getUntyped() # initializeImpl() Node3->Node2 Node4 D3PD::IObjGetterTool + DeclareInterfaceID() + typeinfo() + getUntyped() + get() + releaseObjectUntyped() + releaseObject() + configureD3PD() + getTypeinfo() + releaseObjectTypeinfo() + configureTypeinfo() Node4->Node3 Node5 IAlgTool Node5->Node4 Node6 D3PD::CollectionGetterTool < Obj4Container > - m_it - m_end + CollectionGetterTool() + getUntyped() + typeinfo() + elementTypeinfo() + reset() + nextUntyped() + sizeHint() + get() + releaseObject() + releaseObjectUntyped() Node6->Node2 Node7 D3PD::CollectionGetterToolImpl - m_label - m_registry - m_converter - m_backConverter + CollectionGetterToolImpl() + initialize() + nextTypeinfo() + configureElementTypeinfo() + releaseElementTypeinfo() Node7->Node6 Node8 extends1< ObjGetterToolImpl, ICollectionGetterTool > Node8->Node7