Struct UpdateContext
A context provided to a node's OnUpdate(UpdateContext) implementation.
Inherited Members
Namespace: Unity.DataFlowGraph
Syntax
public struct UpdateContext
Fields
Set
The NodeSetAPI associated with this context.
Declaration
public readonly NodeSetAPI Set
Field Value
Type | Description |
---|---|
NodeSetAPI |
Properties
Handle
A handle to the node being updated.
Declaration
public NodeHandle Handle { get; }
Property Value
Type | Description |
---|---|
NodeHandle |
Methods
EmitMessage<T, TNodeDefinition>(MessageOutput<TNodeDefinition, T>, T)
Emit a message from yourself on a port. Everything connected to it will receive your message.
Declaration
public void EmitMessage<T, TNodeDefinition>(MessageOutput<TNodeDefinition, T> port, in T msg)
where TNodeDefinition : NodeDefinition
Parameters
Type | Name | Description |
---|---|---|
MessageOutput<TNodeDefinition, T> | port | |
T | msg |
Type Parameters
Name | Description |
---|---|
T | |
TNodeDefinition |
EmitMessage<T, TNodeDefinition>(PortArray<MessageOutput<TNodeDefinition, T>>, Int32, T)
Emit a message from yourself on a port array. Everything connected to it will receive your message.
Declaration
public void EmitMessage<T, TNodeDefinition>(PortArray<MessageOutput<TNodeDefinition, T>> port, int arrayIndex, in T msg)
where TNodeDefinition : NodeDefinition
Parameters
Type | Name | Description |
---|---|---|
PortArray<MessageOutput<TNodeDefinition, T>> | port | |
Int32 | arrayIndex | |
T | msg |
Type Parameters
Name | Description |
---|---|
T | |
TNodeDefinition |
RegisterForUpdate()
Registers Handle for regular updates every time Update() is called. This only takes effect after the next Update(). Update(UpdateContext) RemoveFromUpdate()
Declaration
public void RegisterForUpdate()
Remarks
A node will automatically be removed from the update list when it is destroyed.
Exceptions
Type | Condition |
---|---|
InvalidOperationException | Thrown if Handle is already registered for updating. |
RemoveFromUpdate()
Deregisters Handle from updating every time Update() is called. This only takes effect after the next Update(). RegisterForUpdate()
Declaration
public void RemoveFromUpdate()
Exceptions
Type | Condition |
---|---|
InvalidOperationException | Thrown if Handle is not registered for updating. |
SetKernelBufferSize<TGraphKernel>(TGraphKernel)
Set the size of a Buffer<T> appearing in this node's IGraphKernel<TKernelData, TKernelPortDefinition>.
Pass an instance of the node's IGraphKernel<TKernelData, TKernelPortDefinition> as the requestedSize
parameter with Buffer<T> instances within it having been set using SizeRequest(Int32).
Any Buffer<T> instances within the given struct that have not been set using
SizeRequest(Int32) will be unaffected by the call.
Declaration
public void SetKernelBufferSize<TGraphKernel>(in TGraphKernel requestedSize)
where TGraphKernel : IGraphKernel
Parameters
Type | Name | Description |
---|---|---|
TGraphKernel | requestedSize |
Type Parameters
Name | Description |
---|---|
TGraphKernel |
UpdateKernelData<TKernelData>(TKernelData)
Updates the associated TKernelData
asynchronously,
to be available in a IGraphKernel in the next render.
Declaration
public void UpdateKernelData<TKernelData>(in TKernelData data)
where TKernelData : struct, IKernelData
Parameters
Type | Name | Description |
---|---|---|
TKernelData | data |
Type Parameters
Name | Description |
---|---|
TKernelData |