ILightController.cs 681 B

1234567891011121314151617181920212223242526272829
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. namespace TeamAAS_VP.Core.Lights
  7. {
  8. /// <summary>
  9. /// 光源控制器接口
  10. /// </summary>
  11. public interface ILightController : IDisposable
  12. {
  13. int Id { get; }
  14. string Name { get; }
  15. LightModel Model { get; }
  16. int ChannelCount { get; }
  17. bool IsConnected { get; }
  18. IReadOnlyList<ILightChannel> Channels { get; }
  19. Task<bool> ConnectAsync();
  20. Task DisconnectAsync();
  21. Task<bool> InitializeAsync();
  22. Task<bool> TurnOnAllAsync();
  23. Task<bool> TurnOffAllAsync();
  24. }
  25. }