Class UpdateEngine
Efficiently updates values on objects using property paths.
public static class UpdateEngine
- Inheritance
-
UpdateEngine
Methods
Compile(Type, List<UpdateMemberInfo>)
Compiles a list of update operations into a CompiledUpdate, for use with Run(object, CompiledUpdate, IntPtr, UpdateObjectData[]).
public static CompiledUpdate Compile(Type rootObjectType, List<UpdateMemberInfo> animationPaths)
Parameters
rootObjectTypeTypeThe type of the root object.
animationPathsList<UpdateMemberInfo>The different paths and source offsets to use when Run(object, CompiledUpdate, IntPtr, UpdateObjectData[]) is applied.
Returns
- CompiledUpdate
A CompiledUpdate object that can be used for Run(object, CompiledUpdate, IntPtr, UpdateObjectData[]).
RegisterMember(Type, string, UpdatableMember)
Registers a new member for a given type and name.
public static void RegisterMember(Type owner, string name, UpdatableMember updatableMember)
Parameters
ownerTypeThe owner type.
namestringThe member name.
updatableMemberUpdatableMemberThe member update class to get and set value.
RegisterMemberResolver(UpdateMemberResolver)
public static void RegisterMemberResolver(UpdateMemberResolver resolver)
Parameters
resolverUpdateMemberResolver
Run(object, CompiledUpdate, IntPtr, UpdateObjectData[])
Updates the specified target object with new data.
public static void Run(object target, CompiledUpdate compiledUpdate, IntPtr updateData, UpdateObjectData[] updateObjects)
Parameters
targetobjectThe object to update.
compiledUpdateCompiledUpdateThe precompiled list of update operations, generated by Compile(Type, List<UpdateMemberInfo>).
updateDataIntPtrThe data source for blittable struct.
updateObjectsUpdateObjectData[]The data source for objects and non-blittable struct