DataHandle< DATA > Node1 DataHandle< DATA > + DataHandle() + DataHandle() + operator=() + operator=() + ~DataHandle() + isValid() + operator!() + operator int() + operator++() + operator++() + operator->() + operator*() + operator const_pointer_type() + cptr() + reset() * m_ptr * DataHandle() * DataHandle() * clid() * operator==ATLAS_NOT _THREAD_SAFE * operator!=ATLAS_NOT _THREAD_SAFE * dataPointer() * DataHandle() * DataHandle() * operator=() * operator=() * ~DataHandle() * isValid() * operator!() * operator int() * operator++() * operator++() * operator->() * operator*() * operator const_pointer_type() * cptr() * reset() Node2 DataHandleBase + DataHandleBase() + DataHandleBase() + operator=() + DataHandleBase() + DataHandleBase() + ~DataHandleBase() * m_itr * m_itrEnd * m_proxy * m_useItr * isConst() * isInitialized() * isSet() * key() * setState() * setState() * setState() * clid() * ID() * setState() * setState() Node2->Node1 Node3 IResetable + ~IResetable() + reset() + finalReset() + isSet() + key() Node3->Node2