ProtoFlux:Write Latch: Difference between revisions

From Resonite Wiki
Add variable global blurb
added link to impulses
Line 30: Line 30:
== Inputs ==
== Inputs ==


=== Reset (Call) ===  
=== Reset ([[Impulses|Call]]) ===  


Call this to set the value pointed to by Variable ([[Type:Variable|Variable]] Generic) to the ResetValue (Generic) input.
Call this to set the value pointed to by Variable ([[Type:Variable|Variable]] Generic) to the ResetValue (Generic) input.


=== Set (Call) ===  
=== Set ([[Impulses|Call]]) ===  


Call this to set the value pointed to by Variable ([[Type:Variable|Variable]] Generic) to the SetValue (Generic) input.
Call this to set the value pointed to by Variable ([[Type:Variable|Variable]] Generic) to the SetValue (Generic) input.
Line 40: Line 40:
=== SetValue (Generic) ===
=== SetValue (Generic) ===


[[:Category:Type|Value]] to write to the value pointed to by Variable ([[Type:Variable|Variable]] Generic) upon calling Set (Call)  
[[:Category:Type|Value]] to write to the value pointed to by Variable ([[Type:Variable|Variable]] Generic) upon calling Set ([[Impulses|Call]])  


=== ResetValue (Generic) ===
=== ResetValue (Generic) ===


[[:Category:Type|Value]] to write to the value pointed to by Variable ([[Type:Variable|Variable]] Generic) upon calling Reset (Call)  
[[:Category:Type|Value]] to write to the value pointed to by Variable ([[Type:Variable|Variable]] Generic) upon calling Reset ([[Impulses|Call]])  


== Outputs ==
== Outputs ==


=== OnSet (Continuation) ===
=== OnSet ([[Impulses|Continuation]]) ===


sends an impulse after SetValue (Call) has been impulsed and the value pointed to by Variable ([[Type:Variable|Variable]] Generic) has been set to SetValue (Generic).
sends an impulse after SetValue ([[Impulses|Call]]) has been impulsed and the value pointed to by Variable ([[Type:Variable|Variable]] Generic) has been set to SetValue (Generic).


=== OnReset (Continuation) ===
=== OnReset ([[Impulses|Continuation]]) ===


sends an impulse after ResetValue (Call) has been impulsed and the value pointed to by Variable ([[Type:Variable|Variable]] Generic) has been set to ResetValue (Generic).
sends an impulse after ResetValue ([[Impulses|Call]]) has been impulsed and the value pointed to by Variable ([[Type:Variable|Variable]] Generic) has been set to ResetValue (Generic).


=== OnFail (Continuation) ===
=== OnFail (Continuation) ===


sends an impulse after either ResetValue (Call) or SetValue (Call) has been impulsed and the value wasn't able to be written due to a missing Variable ([[Type:Variable|Variable]] Generic) Value.
sends an impulse after either ResetValue ([[Impulses|Call]]) or SetValue ([[Impulses|Call]]) has been impulsed and the value wasn't able to be written due to a missing Variable ([[Type:Variable|Variable]] Generic) Value.


== Globals ==
== Globals ==

Revision as of 00:35, 4 February 2024

Write Latch
Set
OnSet
Reset
OnReset
SetValue
OnFail
ResetValue
Variable
null
Actions

Write latches take a Variable (Variable) as a global input, and the Variable will determine what SetValue (Generic) and ResetValue (Generic) will take as a value. The set and reset value inputs will never take different types from each other.

When it comes to the global Variable (Variable), pulling a protoflux wire from a Source Node or a Reference Source Node and dropping it onto the global field will mark the value that the source points to as the value that should be modified by this node upon impulse.

Write Latches are a way to change a specified value without driving it. Instead you can use Write Latches to change a value in a similar fashion to changing the value through the inspector. Using Write Latches helps with performance too, since the values provided to the node only evaluate for one game tick while the node is being impulsed vs a driver which evaluates every game tick. This can also be used to reduce the amount of times code is evaluated. If you have to search the entire root for your code to find a slot and then do an operation, using Write Latches with your operations will help with performance since you're only searching once and not every single game tick.

Inputs

Reset (Call)

Call this to set the value pointed to by Variable (Variable Generic) to the ResetValue (Generic) input.

Set (Call)

Call this to set the value pointed to by Variable (Variable Generic) to the SetValue (Generic) input.

SetValue (Generic)

Value to write to the value pointed to by Variable (Variable Generic) upon calling Set (Call)

ResetValue (Generic)

Value to write to the value pointed to by Variable (Variable Generic) upon calling Reset (Call)

Outputs

OnSet (Continuation)

sends an impulse after SetValue (Call) has been impulsed and the value pointed to by Variable (Variable Generic) has been set to SetValue (Generic).

OnReset (Continuation)

sends an impulse after ResetValue (Call) has been impulsed and the value pointed to by Variable (Variable Generic) has been set to ResetValue (Generic).

OnFail (Continuation)

sends an impulse after either ResetValue (Call) or SetValue (Call) has been impulsed and the value wasn't able to be written due to a missing Variable (Variable Generic) Value.

Globals

Variable (Variable Generic)

The value source/ref source to write to.

Examples

This article or section is a Stub. You can help the Resonite Wiki by expanding it.