Type:IValue`1: Difference between revisions

From Resonite Wiki
overhaul
ifield -> ilinkable, add interfaces implement(ed|ing)
Line 1: Line 1:
The '''IValue<nowiki><T></nowiki>''' type is an [[Interface Type]] that designates the type it is applied to as something that contains a [[Value Type]].
The '''IValue<nowiki><T></nowiki>''' type is an [[Interface Type]] that designates the type it is applied to as something that contains a [[Value Type]].


This allows for the thing implenting the type to be [[ProtoFlux:Source|sourced]] in ProtoFlux, which in turn allows for the thing to be written to via a [[ProtoFlux:Write|Write]] node. This does <em>not</em> allow the object to be [[Drive|driven]], which requires it to implement [[Type:IField|IField]].
This allows for the thing implenting the type to be [[ProtoFlux:Source|sourced]] in ProtoFlux, which in turn allows for the thing to be written to via a [[ProtoFlux:Write|Write]] node. This does <em>not</em> allow the object to be [[Drive|driven]], which requires it to implement [[Type:ILinkable|ILinkable]].
 
== Interfaces Implemented ==
* [[Type:IChangeable]]
* [[Type:IWorldElement]]
 
== Types Implementing IValue ==
* [[Type:IField`1]]
* [[Type:ValueStream`1]]


== Components Implementing IValue ==
== Components Implementing IValue ==
The following components implement the IValue type. This allows the component itself to be sourced and written to, which usually is not possible.
The following components implement the IValue type, allowing component itself to be sourced and written to, which is usually not possible.


* [[Component:AuthorityTimeBase]]
* [[Component:AuthorityTimeBase]]
* [[Component:ValueMultiplexer]]
* [[Component:ValueMultiplexer]]
== See Also ==
* [[Type:IField`1]]


[[Category:Type]]
[[Category:Type]]

Revision as of 20:15, 13 August 2024

The IValue<T> type is an Interface Type that designates the type it is applied to as something that contains a Value Type.

This allows for the thing implenting the type to be sourced in ProtoFlux, which in turn allows for the thing to be written to via a Write node. This does not allow the object to be driven, which requires it to implement ILinkable.

Interfaces Implemented

Types Implementing IValue

Components Implementing IValue

The following components implement the IValue type, allowing component itself to be sourced and written to, which is usually not possible.