#include <nodes_import.h>
An ImportAdapter is called right after node system data has been read from a stream to adapt the data from the serialized version to the current version. For example, such an adapter can rename identifiers of referenced node templates or change attribute values.
You have to register an ImportAdapter at the ImportAdapters registry. Then it will be called on serialization to add version information to the stream, and on de-serialization to adapt to the current version.
Public Member Functions | |
MAXON_METHOD Result< void > | BeforeWrite (SerializationNodeData &root) const |
MAXON_METHOD Result< void > | AfterRead (SerializationNodeData &root) const |
Private Member Functions | |
MAXON_INTERFACE (ImportAdapterInterface, MAXON_REFERENCE_CONST, "net.maxon.node.interface.importadapter", MAXON_IMPLEMENTATION_MODULE("net.maxon.nodes")) | |
|
private |
MAXON_METHOD Result<void> BeforeWrite | ( | SerializationNodeData & | root | ) | const |
Adds version information to the node data starting at #root before serialization. For example the implementation can tag certain nodes with version numbers so that the Adapt method knows their serialized version and can take appropriate actions to adapt to the current version.
MAXON_METHOD Result<void> AfterRead | ( | SerializationNodeData & | root | ) | const |
Adapts the node system data starting at #root. This method is called on de-serialization of node system data to allow for adaptations between different versions. #root gives write access to the de-serialized data.
[in,out] | root | The SerializationNodeData root node of the de-serialized node system data. |