Class BindableEnum<T>
Class which contains an enum member variable of type T and provides a binding API to data changes.
Implements
Inherited Members
Namespace: Unity.XR.CoreUtils.Bindings.Variables
Assembly: Unity.XR.CoreUtils.dll
Syntax
public class BindableEnum<T> : BindableVariableBase<T>, IReadOnlyBindableVariable<T> where T : struct, IConvertible
Type Parameters
| Name | Description |
|---|---|
| T | The type of the variable enum. |
Remarks
Uses GetHashCode for comparison since Equals on an enum causes GC alloc.
Constructors
BindableEnum(T, bool, Func<T, T, bool>, bool)
Constructor for bindable enum, which is a variable that notifies listeners when the internal enum value changes.
Declaration
public BindableEnum(T initialValue = default, bool checkEquality = true, Func<T, T, bool> equalityMethod = null, bool startInitialized = false)
Parameters
| Type | Name | Description |
|---|---|---|
| T | initialValue | Enum value of type |
| bool | checkEquality | Setting true checks whether to compare new enum to old before triggering callback. Defaults to true. |
| Func<T, T, bool> | equalityMethod | Func used to provide custom equality checking behavior. Defaults to |
| bool | startInitialized | Setting false results in initial enum setting will trigger registered callbacks, regardless of whether the value is the same as the initial one. Defaults to false. |
Methods
ValueEquals(T)
Performs equal operation by comparing hash codes.
Declaration
public override bool ValueEquals(T other)
Parameters
| Type | Name | Description |
|---|---|---|
| T | other | Other enum to compare with. |
Returns
| Type | Description |
|---|---|
| bool |