Navigation
API > API/Plugins > API/Plugins/LevelSnapshots > API/Plugins/LevelSnapshots/Restorability > API/Plugins/LevelSnapshots/Restorability/Interfaces
References
| Module | LevelSnapshots |
| Header | /Engine/Plugins/VirtualProduction/LevelSnapshots/Source/LevelSnapshots/Public/Restorability/Interfaces/ICustomObjectSnapshotSerializer.h |
| Include | #include "Restorability/Interfaces/ICustomObjectSnapshotSerializer.h" |
Syntax
class ICustomObjectSnapshotSerializer
Remarks
External modules can implement this interface to customise how specific classes are snapshot and restored. Implementations of this interface can be registered with the Level Snapshots module.
One instance handles on type of class.
ISnapshotObjectSerializer handles the serialisation of the object you're registered to. You can use it to add custom annotation data you need to restoring object info. You can also save & restore subobjects you wish to manually restore, provided they're not automatically restored by Level Snapshots. The following subobjects are handled by default:
- Actor components
Destructors
| Type | Name | Description | |
|---|---|---|---|
Functions
| Type | Name | Description | |
|---|---|---|---|
| UObject * | FindOrRecreateSubobjectInEditorWorld
(
UObject* EditorObject, |
Called when applying into the editor world. | |
| UObject * | FindOrRecreateSubobjectInSnapshotWorld
(
UObject* SnapshotObject, |
Called when creating objects for the temporary snapshot world. | |
| UObject * | FindSubobjectInEditorWorld
(
UObject* EditorObject, |
Similar to FindOrRecreateSubobjectInEditorWorld, only that the subobject is not recreated if not present. | |
| void | OnPostSerializeEditorSubobject
(
UObject* Subobject, |
Optional. | |
| void | OnPostSerializeSnapshotSubobject
(
UObject* Subobject, |
Optional. | |
| void | OnTakeSnapshot
(
UObject* EditorObject, |
Called when taking a snapshot of an object with the class this implementation is registered to. | |
| void | PostApplyToEditorObject
(
UObject* Object, |
Optional. | |
| void | PostApplyToSnapshotObject
(
UObject* Object, |
Optional. | |
| void | PreApplyToEditorObject
(
UObject* Object, |
Optional. | |
| void | PreApplyToSnapshotObject
(
UObject* Object, |
Optional. |