SG::ConstIterator< DATA > Node1 SG::ConstIterator< DATA > + ConstIterator() + ConstIterator() + setState() - equal() - dereference() Node2 SG::detail::IteratorBase - m_proxies + proxy() + key() # IteratorBase() # IteratorBase() # IteratorBase() # ~IteratorBase() # operator=() # setState() # increment() # eql() # const_check() - addRef() - release() Node2->Node1 Node3 boost::iterator_facade < ConstIterator< DATA >, const DATA, boost:: forward_traversal_tag > Node3->Node1