SG::ThinningHandle< T > Node1 SG::ThinningHandle< T > + ThinningHandle() + ThinningHandle() Node2 ReadHandle< T > Node2->Node1 Node3 SG::ThinningHandleBase + ThinningHandleBase() + ~ThinningHandleBase() + thin() + keep() + thin() + keep() + thin() + keep() + thinAll() + keepAll() + decision() Node3->Node1 Node4 std::unique_ptr< SG ::ThinningDecision > + operator->() Node4->Node3 -m_decision Node5 SG::ThinningDecision + ThinningDecision() + ThinningDecision() + link() + lock() Node5->Node4 +ptr Node6 SG::ThinningDecisionBase + RemovedIdx - m_mask + ThinningDecisionBase() + resize() + thinned() + size() + thinnedSize() + thinAll() + keepAll() + thin() + keep() + thin() and 7 more... Node6->Node5 Node8 ILockable + ~ILockable() + lock() Node8->Node5 Node56 SG::WriteHandle< SG ::ThinningDecision > + WriteHandle() + WriteHandle() + WriteHandle() + WriteHandle() + WriteHandle() + WriteHandle() + operator=() + operator=() + operator=() + ~WriteHandle() and 26 more... - record() - checkedCachedPtr() - doRecord() - doPut() - doPut() - doPut() Node56->Node3 -m_decisionHandle Node57 SG::VarHandleBase # m_ptr # m_storeWasSet + VarHandleBase() + VarHandleBase() + VarHandleBase() + VarHandleBase() + VarHandleBase() + VarHandleBase() + operator=() + operator=() + ~VarHandleBase() + key() and 20 more... # setState() # setState() # record_impl() # put_impl() # typeless_dataPointer_impl() # typeless_dataPointer() # typeless_cptr() # typeless_ptr() # get_impl() # symLink_impl() # isPresent_impl() - storeFromHandle() - setStoreFromHandle() - resetProxy() - setProxy() - typeless_dataPointer _fromProxy() Node57->Node56 Node12 SG::DataProxy + DataProxy() + DataProxy() + DataProxy() + DataProxy() + DataProxy() + DataProxy() + ~DataProxy() * handleList_t * mutex_t * lock_t * objMutex_t * objLock_t * SG::DataStore * m_refCount * m_resetFlag * m_boundHandles * m_origConst and 57 more... Node12->Node56 -m_lockAuxPending Node12->Node57 #m_proxy