UDocumentation
UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
DataflowArchive.h
Go to the documentation of this file.
1
// Copyright Epic Games, Inc. All Rights Reserved.
2
3
#pragma once
4
5
// The following code serializes the size of the PropertyData to serialize so that when loading,
6
// we can skip over it if the function could not be loaded.
7
// Serialize a temporary value for the delta in order to end up with an archive of the right size.
8
// Then serialize the PropertyData in order to get its size.
9
#define DATAFLOW_OPTIONAL_BLOCK_WRITE_BEGIN(){\
10
const int64 NodeDataSizePos = Ar.Tell();\
11
int64 NodeDataSize = 0;\
12
Ar << NodeDataSize;\
13
const int64 NodeBegin = Ar.Tell();
14
15
16
// Only go back and serialize the number of argument bytes if there is actually an underlying buffer to seek to.
17
// Come back to the temporary value we wrote and overwrite it with the PropertyData size we just calculated.
18
// And finally seek back to the end.
19
#define DATAFLOW_OPTIONAL_BLOCK_WRITE_END()\
20
if (NodeDataSizePos != INDEX_NONE)\
21
{\
22
const int64 NodeEnd = Ar.Tell();\
23
NodeDataSize = (NodeEnd - NodeBegin);\
24
Ar.Seek(NodeDataSizePos);\
25
Ar << NodeDataSize;\
26
Ar.Seek(NodeEnd);\
27
}\
28
}
29
30
31
#define DATAFLOW_OPTIONAL_BLOCK_READ_BEGIN(COND) \
32
{\
33
int64 NodeDataSize = 0;\
34
Ar << NodeDataSize;\
35
if (COND)
36
37
#define DATAFLOW_OPTIONAL_BLOCK_READ_ELSE() \
38
else{\
39
Ar.Seek(Ar.Tell() + NodeDataSize);\
40
41
#define DATAFLOW_OPTIONAL_BLOCK_READ_END() }}
42
Engine
Source
Runtime
Experimental
Dataflow
Core
Public
Dataflow
DataflowArchive.h
Generated by
1.9.8