XII Release 0.1.0
Loading...
Searching...
No Matches
xiiDocumentObjectMirror Class Reference
Inheritance diagram for xiiDocumentObjectMirror:
[legend]

Public Types

using FilterFunction = xiiDelegate<bool(const xiiDocumentObject*, xiiStringView)>

Public Member Functions

void InitSender (const xiiDocumentObjectManager *pManager)
void InitReceiver (xiiRttiConverterContext *pContext)
void DeInit ()
void SetFilterFunction (FilterFunction filter)
void SendDocument ()
void Clear ()
void TreeStructureEventHandler (const xiiDocumentObjectStructureEvent &e)
void TreePropertyEventHandler (const xiiDocumentObjectPropertyEvent &e)
void * GetNativeObjectPointer (const xiiDocumentObject *pObject)
const void * GetNativeObjectPointer (const xiiDocumentObject *pObject) const

Protected Member Functions

bool IsRootObject (const xiiDocumentObject *pParent)
bool IsHeapAllocated (const xiiDocumentObject *pParent, xiiStringView sParentProperty)
bool IsDiscardedByFilter (const xiiDocumentObject *pObject, xiiStringView sProperty) const
virtual void ApplyOp (xiiObjectChange &change)
void ApplyOp (xiiRttiConverterObject object, const xiiObjectChange &change)

Static Protected Member Functions

static void CreatePath (xiiObjectChange &out_change, const xiiDocumentObject *pRoot, xiiStringView sProperty)
static xiiUuid FindRootOpObject (const xiiDocumentObject *pObject, xiiHybridArray< const xiiDocumentObject *, 8 > &path)
static void FlattenSteps (const xiiArrayPtr< const xiiDocumentObject *const > path, xiiHybridArray< xiiPropertyPathStep, 2 > &out_steps)

Protected Attributes

xiiRttiConverterContext * m_pContext
const xiiDocumentObjectManager * m_pManager
FilterFunction m_Filter

Member Function Documentation

◆ SetFilterFunction()

void xiiDocumentObjectMirror::SetFilterFunction ( FilterFunction filter)
Parameters
filterFilter that defines whether an object property should be mirrored or not.

The documentation for this class was generated from the following files:
  • /home/runner/work/XII/XII/Source/Tools/Libs/ToolsFoundation/Object/DocumentObjectMirror.h
  • /home/runner/work/XII/XII/Source/Tools/Libs/ToolsFoundation/Object/Implementation/DocumentObjectMirror.cpp