DataLinkVector< DC >::iterator Node1 DataLinkVector< DC >::iterator # m_it + iterator() + operator!=() + operator==() + operator=() + operator++() + operator++() + operator*() + operator->() + hasData() # iterator() # checkChain() # entryVector() Node2 DataLinkVector< DC > + DataLinkVector() + ~DataLinkVector() + init() + begin() + end() + find() + setObjectOwnership() + operator[]() + cleanup() + size() # chainEntry() Node2->Node1 #m_dlv Node3 DataObject Node3->Node2 Node4 DataLinkVector< DC >::Entry - m_ownObject + Entry() + operator=() + previousEntry() + dataLink() + ownObject() + setPreviousEntry() + setDataLink() + setOwnObject() Node4->Node2 #m_last Node4->Node4 -m_previousEntry Node5 DataLinkVector< DC >::DataHolder - m_obj + DataHolder() + hasData() + operator->() + operator const_pointer() + cptr() + reset() + setDataPtr() + getDataPtr() Node5->Node4 -m_dataLink Node6 std::vector< Entry > + elements Node6->Node2 #m_vect