Table of Contents

Class SharedVariable<T>

Namespace
Ceres.Graph
Assembly
Ceres.Graph.dll
public abstract class SharedVariable<T> : SharedVariable, ICloneable, IDisposable, IVariable<T>

Type Parameters

T
Inheritance
SharedVariable<T>
Implements
Derived
Inherited Members
Extension Methods

Constructors

SharedVariable()

protected SharedVariable()

Fields

Getter

protected Func<T> Getter

Field Value

Func<T>

Setter

protected Action<T> Setter

Field Value

Action<T>

value

protected T value

Field Value

T

Properties

Value

public T Value { get; set; }

Property Value

T

Methods

Bind(IVariable<T>)

public void Bind(IVariable<T> other)

Parameters

other IVariable<T>

Bind(SharedVariable)

Bind to other sharedVariable

public override void Bind(SharedVariable other)

Parameters

other SharedVariable

Clone()

Clone shared variable by deep copy, an option here is to override for preventing using reflection

public override sealed SharedVariable Clone()

Returns

SharedVariable

CloneT()

protected virtual SharedVariable<T> CloneT()

Returns

SharedVariable<T>

CopyProperty(SharedVariable)

protected void CopyProperty(SharedVariable other)

Parameters

other SharedVariable

Dispose()

Unbind self

public override void Dispose()

GetValue()

public override sealed object GetValue()

Returns

object

GetValueType()

public override Type GetValueType()

Returns

Type

Observe()

Create a observe proxy variable

public override ObserveProxyVariable Observe()

Returns

ObserveProxyVariable

ObserveT()

public ObserveProxyVariable<T> ObserveT()

Returns

ObserveProxyVariable<T>

SetValue(object)

public override sealed void SetValue(object newValue)

Parameters

newValue object