LayerMaterialMapCnv Node1 LayerMaterialMapCnv - m_msgSvc + LayerMaterialMapCnv() # initialize() # createPersistentWithKey() # createTransientWithKey() # getTopLevelTPCnv() Node2 LayerMaterialMapCnvBase + T_AthenaPoolCustomCnvWithKey() # createPersistentWithKey() # createTransientWithKey() # poolReadObject() # poolReadObject() # keepPoolObj() # transToPers() # persToTrans() # DataObjectToPers() # DataObjectToPool() # PoolToDataObject() # cleanUp() Node2->Node1 Node3 T_AthenaPoolCustCnv < TRANS, PERS > + classID() # T_AthenaPoolCustCnv() # initialize() # setPlacementForP() # DataObjectToPers() # DataObjectToPool() # PoolToDataObject() # objectToPool() # poolToObject() # transToPers() # persToTrans() # compareClassGuid() # setToken() Node3->Node2 Node30 std::map< std::string, std::vector< std::unique _ptr< RpcSectorLogicContainer _p1 > > > Node30->Node2 #m_persObjLists Node21 std::mutex Node21->Node2 #m_pListMutex Node33 LayerMaterialMapCnv_tlp1 + LayerMaterialMapCnv_tlp1() + ~LayerMaterialMapCnv_tlp1() + setPStorage() + getTokenListVar() Node33->Node1 -m_TPConverter_tlp1 Node34 AthenaPoolTopLevelTPConverter < LayerMaterialMapCnv_p1, Trk::LayerMaterialMap_tlp1 > # m_mainConverter + setPStorage() + TopLevelTPConverter() + createTransient() + createTransientWithKey() + createTransient() + createPersistent() + createPersistentWithKey() + addMainTPConverter() + setMainCnvPStorage() + getConverterID() and 8 more... Node34->Node33 Node43 HomogeneousLayerMaterial Cnv_p1 + HomogeneousLayerMaterial Cnv_p1() + persToTrans() + transToPers() Node43->Node33 #m_hlMaterialCnv Node49 ElementTableCnv_p1 + ElementTableCnv_p1() + persToTrans() + transToPers() Node49->Node33 #m_elementTableCnv Node56 CompoundLayerMaterialCnv_p1 + CompoundLayerMaterialCnv_p1() + persToTrans() + transToPers() Node56->Node33 #m_clMaterialCnv