ezEngine  Release 25.03
ezWorldRttiConverterContext Class Reference

The world rtti converter context tracks created objects and is capable of also handling components / game objects. Used by the ezIPCObjectMirror to create / destroy objects. More...

#include <WorldRttiConverterContext.h>

Inheritance diagram for ezWorldRttiConverterContext:

Classes

struct  Event
 

Public Member Functions

virtual void Clear () override
 
void DeleteExistingObjects ()
 
virtual ezInternal::NewInstance< void > CreateObject (const ezUuid &guid, const ezRTTI *pRtti) override
 
virtual void DeleteObject (const ezUuid &guid) override
 
virtual void RegisterObject (const ezUuid &guid, const ezRTTI *pRtti, void *pObject) override
 
virtual void UnregisterObject (const ezUuid &guid) override
 
virtual ezRttiConverterObject GetObjectByGUID (const ezUuid &guid) const override
 
virtual ezUuid GetObjectGUID (const ezRTTI *pRtti, const void *pObject) const override
 
virtual void OnUnknownTypeError (ezStringView sTypeName) override
 
- Public Member Functions inherited from ezRttiConverterContext
virtual ezUuid GenerateObjectGuid (const ezUuid &parentGuid, const ezAbstractProperty *pProp, ezVariant index, void *pObject) const
 Generates a guid for a new object. Default implementation generates stable guids derived from parentGuid + property name + index and ignores the address of pObject.
 
virtual const ezRTTIFindTypeByName (ezStringView sName) const
 
template<typename T >
void GetObjectsByType (ezDynamicArray< T * > &out_objects, ezDynamicArray< ezUuid > *out_pUuids=nullptr)
 
virtual ezUuid EnqueObject (const ezUuid &guid, const ezRTTI *pRtti, void *pObject)
 
virtual ezRttiConverterObject DequeueObject ()
 

Public Attributes

ezWorldm_pWorld = nullptr
 
ezEditorGuidEngineHandleMap< ezGameObjectHandlem_GameObjectMap
 
ezEditorGuidEngineHandleMap< ezComponentHandlem_ComponentMap
 
ezEditorGuidEngineHandleMap< ezUInt32 > m_OtherPickingMap
 
ezEditorGuidEngineHandleMap< ezUInt32 > m_ComponentPickingMap
 
ezUInt32 m_uiNextComponentPickingID = 1
 
ezUInt32 m_uiHighlightID = 1
 
ezEvent< const Event & > m_Events
 
ezSet< ezStringm_UnknownTypes
 

Additional Inherited Members

- Protected Attributes inherited from ezRttiConverterContext
ezHashTable< ezUuid, ezRttiConverterObjectm_GuidToObject
 
ezHashTable< const void *, ezUuidm_ObjectToGuid
 
ezSet< ezUuidm_QueuedObjects
 

Detailed Description

The world rtti converter context tracks created objects and is capable of also handling components / game objects. Used by the ezIPCObjectMirror to create / destroy objects.

Atm it does not remove owner ptr when a parent is deleted, so it will accumulate zombie entries. As requests to dead objects shouldn't generally happen this is for the time being not a problem.


The documentation for this class was generated from the following files: