Automated: create new component page |
TheAutopilot (talk | contribs) Added details to match ValueMultiplexer (as far as similarities go) |
||
Line 3: | Line 3: | ||
|Name=Reference Multiplexer`1 | |Name=Reference Multiplexer`1 | ||
}} | }} | ||
ReferenceMultiplexers allow to curate a list of references and [[Drive|drive]] a target with one of them. | |||
Unlike [[Component:ValueMultiplexer|ValueMultiplexers]] they don't implement [[Type:IValue`1|IValue]] and therefore can't be accessed directly within ProtoFlux. | |||
== Usage == | == Usage == | ||
{{Table ComponentFields | {{Table ComponentFields | ||
|Target|{{RootFieldType|RefDrive`1|T}}|TypeAdv0=true| | |Target|{{RootFieldType|RefDrive`1|T}}|TypeAdv0=true|A [[Type:SyncRef`1|SyncRef]] which is driven with the currently selected reference | ||
|Index|Int| | |Index|Int|0-based index that determines which reference of <code>References</code> has been selected; values outside the range <code>[0;length-1]</code> are wrapped around internally. | ||
|References|{{RootFieldType|SyncRefList`1|T}}|TypeAdv2=true| | |References|{{RootFieldType|SyncRefList`1|T}}|TypeAdv2=true|A list of references which can also individually be driven or written to | ||
|AllowWriteBack|Bool| | |AllowWriteBack|Bool|Setting this to <code>true</code> redirects writes from <code>Target</code> to the currently indexed list entry. | ||
}} | }} | ||
== Behavior == | == Behavior == | ||
The component behaves similar to a [[Component:ReferenceCopy|ReferenceCopy]] with the list entry indicated by <code>Index</code> as its <code>Source</code>. | |||
Changes to <code>Index</code> or the list entries will affect <code>Target</code> whenever the drive is evaluated. | |||
== Examples == | == Examples == |
Latest revision as of 17:09, 10 July 2024
Component image
ReferenceMultiplexers allow to curate a list of references and drive a target with one of them.
Unlike ValueMultiplexers they don't implement IValue and therefore can't be accessed directly within ProtoFlux.
Usage
Name | Type | Description |
---|---|---|
persistent
|
Bool | Determines whether or not this item will be saved to the server. |
UpdateOrder
|
Int | Controls the order in which this component is updated. |
Enabled
|
Bool | Controls whether or not this component is enabled. |
Target
|
direct RefDrive`1<T> | A SyncRef which is driven with the currently selected reference |
Index
|
Int | 0-based index that determines which reference of References has been selected; values outside the range [0;length-1] are wrapped around internally.
|
References
|
list of T | A list of references which can also individually be driven or written to |
AllowWriteBack
|
Bool | Setting this to true redirects writes from Target to the currently indexed list entry.
|
Behavior
The component behaves similar to a ReferenceCopy with the list entry indicated by Index
as its Source
.
Changes to Index
or the list entries will affect Target
whenever the drive is evaluated.