Characteristic | Locus |
---|---|
Inheritance | object > ObservableBase<UNIT> > SamplingSensorBase<UNIT> |
Implements | IObservable<IChangeResult<UNIT>> |
Inherited Members | object.Equals(object) object.Equals(object, object) object.GetHashCode() object.GetType() object.MemberwiseClone() object.ReferenceEquals(object, object) object.ToString() |
Namespace | Meadow.Foundation |
Assembly | Meadow.Foundation.dll |
Syntax
public abstract class ObservableBase<UNIT> : IObservable<IChangeResult<UNIT>> where UNIT : struct
Type Parameters
Name | Description |
---|---|
UNIT |
Properties
observers
Subscribed observers
Declaration
protected List<IObserver<IChangeResult<UNIT>>> observers { get; set; }
Property Value
Type | Description |
---|---|
List<IObserver<IChangeResult<UNIT>>> |
Methods
CreateObserver(Action<IChangeResult<UNIT>>, Predicate<IChangeResult<UNIT>>?)
Convenience method to generate a an FilterableChangeObserver
with
the correct signature.
Declaration
public static FilterableChangeObserver<UNIT> CreateObserver(Action<IChangeResult<UNIT>> handler, Predicate<IChangeResult<UNIT>>? filter = null)
Parameters
Type | Name | Description |
---|---|---|
Action<IChangeResult<UNIT>> | handler | The action that is invoked when the filter is satisifed. |
Predicate<IChangeResult<UNIT>> | filter | An optional filter that determines whether or not the consumer should be notified. |
Returns
Type | Description |
---|---|
FilterableChangeObserver<UNIT> | A FilterableChangeObserver |
NotifyObservers(IChangeResult<UNIT>)
Notify observers of a change
Declaration
protected void NotifyObservers(IChangeResult<UNIT> changeResult)
Parameters
Type | Name | Description |
---|---|---|
IChangeResult<UNIT> | changeResult |
Subscribe(IObserver<IChangeResult<UNIT>>)
Subscribes an IObserver
to get notified when a change occurs.
Declaration
public IDisposable Subscribe(IObserver<IChangeResult<UNIT>> observer)
Parameters
Type | Name | Description |
---|---|---|
IObserver<IChangeResult<UNIT>> | observer | The |
Returns
Type | Description |
---|---|
IDisposable |