using System; using Aitex.Core.Util; namespace Aitex.Core.RT.IOCore.Interlock.Base; public abstract class IoValueProvider : IInterlockLimitDataProvider where TAccessor: IIOAccessor { #region Variables private readonly R_TRIG _rTrigPollFailed = new(); #endregion #region Constructors /// /// 实例化数据拉取器 /// /// /// protected IoValueProvider(TAccessor io) { Io = io; } #endregion #region Properties public string Name => $"{Io.Type}-{Io.IoTableIndex}({Io.Name})"; /// /// 返回当前数据拉取器需要拉取的数据路径。 /// /// 注意路径中不要包含Module名称。 /// /// public TAccessor Io { get; } #endregion #region Methods /// /// 获取数据。 /// /// public virtual object GetValue() { throw new NotImplementedException(); } #endregion }