using System; using System.Threading.Tasks; using Microsoft.Extensions.Logging; using Sharp7.Rx.Enums; namespace Sharp7.Rx.Interfaces { public interface IPlc : IDisposable { IObservable CreateNotification(string variableName, TransmissionMode transmissionMode, TimeSpan cycleSpan); Task SetValue(string variableName, TValue value); Task GetValue(string variableName); IObservable ConnectionState { get; } ILogger Logger { get; } } }