XII Release 0.1.0
Loading...
Searching...
No Matches
xiiApplyNativePropertyChangesContext Class Reference

The xiiApplyNativePropertyChangesContext takes care of generating guids for native pointers that match those of the xiiAbstractObjectGraph 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 xiiApplyNativePropertyChangesContext:
[legend]

Public Member Functions

 xiiApplyNativePropertyChangesContext (xiiRttiConverterContext &ref_source, const xiiAbstractObjectGraph &originalGraph)
 
virtual xiiUuid GenerateObjectGuid (const xiiUuid &parentGuid, const xiiAbstractProperty *pProp, xiiVariant 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 xiiRttiConverterContext
virtual void Clear ()
 
virtual xiiInternal::NewInstance< void > CreateObject (const xiiUuid &guid, const xiiRTTI *pRtti)
 
virtual void DeleteObject (const xiiUuid &guid)
 
virtual void RegisterObject (const xiiUuid &guid, const xiiRTTI *pRtti, void *pObject)
 
virtual void UnregisterObject (const xiiUuid &guid)
 
virtual xiiRttiConverterObject GetObjectByGUID (const xiiUuid &guid) const
 
virtual xiiUuid GetObjectGUID (const xiiRTTI *pRtti, const void *pObject) const
 
virtual const xiiRTTIFindTypeByName (xiiStringView sName) const
 
template<typename T>
void GetObjectsByType (xiiDynamicArray< T * > &out_objects, xiiDynamicArray< xiiUuid > *out_pUuids=nullptr)
 
virtual xiiUuid EnqueObject (const xiiUuid &guid, const xiiRTTI *pRtti, void *pObject)
 
virtual xiiRttiConverterObject DequeueObject ()
 
virtual void OnUnknownTypeError (xiiStringView sTypeName)
 

Additional Inherited Members

- Protected Attributes inherited from xiiRttiConverterContext
xiiHashTable< xiiUuid, xiiRttiConverterObjectm_GuidToObject
 
xiiHashTable< const void *, xiiUuidm_ObjectToGuid
 
xiiSet< xiiUuidm_QueuedObjects
 

Detailed Description

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

See also
xiiAbstractObjectGraph::ModifyNodeViaNativeCounterpart

Member Function Documentation

◆ GenerateObjectGuid()

xiiUuid xiiApplyNativePropertyChangesContext::GenerateObjectGuid ( const xiiUuid & parentGuid,
const xiiAbstractProperty * pProp,
xiiVariant 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 xiiRttiConverterContext.


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