Plasma Engine  2.0
Loading...
Searching...
No Matches
plApplyNativePropertyChangesContext Class Reference

The plApplyNativePropertyChangesContext takes care of generating guids for native pointers that match those of the plAbstractObjectGraph that was passed in. This allows native changes to be tracked and applied to the object graph at a later point. More...

#include <ApplyNativePropertyChangesContext.h>

Inheritance diagram for plApplyNativePropertyChangesContext:

Public Member Functions

 plApplyNativePropertyChangesContext (plRttiConverterContext &ref_source, const plAbstractObjectGraph &originalGraph)
 
virtual plUuid GenerateObjectGuid (const plUuid &parentGuid, const plAbstractProperty *pProp, plVariant index, void *pObject) const override
 Generates a guid for a new object. Default implementation generates stable guids derived from parentGuid + property name + index and ignores the address of pObject.
 
- Public Member Functions inherited from plRttiConverterContext
virtual void Clear ()
 
virtual plInternal::NewInstance< void > CreateObject (const plUuid &guid, const plRTTI *pRtti)
 
virtual void DeleteObject (const plUuid &guid)
 
virtual void RegisterObject (const plUuid &guid, const plRTTI *pRtti, void *pObject)
 
virtual void UnregisterObject (const plUuid &guid)
 
virtual plRttiConverterObject GetObjectByGUID (const plUuid &guid) const
 
virtual plUuid GetObjectGUID (const plRTTI *pRtti, const void *pObject) const
 
virtual const plRTTIFindTypeByName (plStringView sName) const
 
template<typename T >
void GetObjectsByType (plDynamicArray< T * > &out_objects, plDynamicArray< plUuid > *out_pUuids=nullptr)
 
virtual plUuid EnqueObject (const plUuid &guid, const plRTTI *pRtti, void *pObject)
 
virtual plRttiConverterObject DequeueObject ()
 
virtual void OnUnknownTypeError (plStringView sTypeName)
 

Additional Inherited Members

- Protected Attributes inherited from plRttiConverterContext
plHashTable< plUuid, plRttiConverterObjectm_GuidToObject
 
plHashTable< const void *, plUuidm_ObjectToGuid
 
plSet< plUuidm_QueuedObjects
 

Detailed Description

The plApplyNativePropertyChangesContext takes care of generating guids for native pointers that match those of the plAbstractObjectGraph that was passed in. This allows native changes to be tracked and applied to the object graph at a later point.

See also
plAbstractObjectGraph::ModifyNodeViaNativeCounterpart

Member Function Documentation

◆ GenerateObjectGuid()

plUuid plApplyNativePropertyChangesContext::GenerateObjectGuid ( const plUuid & parentGuid,
const plAbstractProperty * pProp,
plVariant index,
void * pObject ) const
overridevirtual

Generates a guid for a new object. Default implementation generates stable guids derived from parentGuid + property name + index and ignores the address of pObject.

Reimplemented from plRttiConverterContext.


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