IConsoleDriverFacade.cs 824 B

12345678910111213141516171819202122232425
  1. namespace Terminal.Gui.Drivers;
  2. /// <summary>
  3. /// Interface for v2 driver abstraction layer
  4. /// </summary>
  5. public interface IConsoleDriverFacade
  6. {
  7. /// <summary>
  8. /// Class responsible for processing native driver input objects
  9. /// e.g. <see cref="ConsoleKeyInfo"/> into <see cref="Key"/> events
  10. /// and detecting and processing ansi escape sequences.
  11. /// </summary>
  12. IInputProcessor InputProcessor { get; }
  13. /// <summary>
  14. /// Describes the desired screen state. Data source for <see cref="IConsoleOutput"/>.
  15. /// </summary>
  16. IOutputBuffer OutputBuffer { get; }
  17. /// <summary>
  18. /// Interface for classes responsible for reporting the current
  19. /// size of the terminal window.
  20. /// </summary>
  21. IWindowSizeMonitor WindowSizeMonitor { get; }
  22. }