Class EntityDelta
- Namespace
- KeenEyes.Serialization
- Assembly
- KeenEyes.Core.dll
Represents changes to a single entity.
public sealed record EntityDelta : IEquatable<EntityDelta>
- Inheritance
-
EntityDelta
- Implements
- Inherited Members
Properties
AddedComponents
Gets components that were added to the entity.
public IReadOnlyList<SerializedComponent> AddedComponents { get; init; }
Property Value
EntityId
Gets the ID of the entity that was modified.
public required int EntityId { get; init; }
Property Value
IsEmpty
Gets whether this delta is empty (no changes).
[JsonIgnore]
public bool IsEmpty { get; }
Property Value
ModifiedComponents
Gets components that were modified on the entity.
public IReadOnlyList<SerializedComponent> ModifiedComponents { get; init; }
Property Value
NameRemoved
Gets whether the entity's name was explicitly cleared (removed).
public bool NameRemoved { get; init; }
Property Value
Remarks
Distinct from a null NewName, which means the name is unchanged.
When true, the entity's name is removed during restoration.
NewName
Gets the new name assigned to the entity, or null when the name is unchanged.
public string? NewName { get; init; }
Property Value
Remarks
A null value means "no change"; to represent clearing an entity's name, use
NameRemoved. This mirrors how NewParentId and
ParentRemoved distinguish "reparent" from "orphan".
NewParentId
Gets whether the entity's parent changed.
public int? NewParentId { get; init; }
Property Value
- int?
ParentRemoved
Gets whether the parent was explicitly set to null (orphaned).
public bool ParentRemoved { get; init; }
Property Value
RemovedComponentTypes
Gets type names of components that were removed from the entity.
public IReadOnlyList<string> RemovedComponentTypes { get; init; }