2024-07-03 18:22:22 +08:00
|
|
|
namespace MyNes.Core
|
2024-07-03 18:15:28 +08:00
|
|
|
{
|
2024-07-03 18:22:22 +08:00
|
|
|
public interface IVideoProvider
|
|
|
|
{
|
|
|
|
string Name { get; }
|
2024-07-03 18:15:28 +08:00
|
|
|
|
2024-07-03 18:22:22 +08:00
|
|
|
string ID { get; }
|
2024-07-03 18:15:28 +08:00
|
|
|
|
2024-07-03 18:22:22 +08:00
|
|
|
void WriteErrorNotification(string message, bool instant);
|
2024-07-03 18:15:28 +08:00
|
|
|
|
2024-07-03 18:22:22 +08:00
|
|
|
void WriteInfoNotification(string message, bool instant);
|
2024-07-03 18:15:28 +08:00
|
|
|
|
2024-07-03 18:22:22 +08:00
|
|
|
void WriteWarningNotification(string message, bool instant);
|
2024-07-03 18:15:28 +08:00
|
|
|
|
2024-07-03 18:22:22 +08:00
|
|
|
void TakeSnapshotAs(string path, string format);
|
2024-07-03 18:15:28 +08:00
|
|
|
|
2024-07-03 18:22:22 +08:00
|
|
|
void TakeSnapshot();
|
2024-07-03 18:15:28 +08:00
|
|
|
|
2024-07-03 18:22:22 +08:00
|
|
|
void Initialize();
|
2024-07-03 18:15:28 +08:00
|
|
|
|
2024-07-03 18:22:22 +08:00
|
|
|
void ShutDown();
|
2024-07-03 18:15:28 +08:00
|
|
|
|
2024-07-03 18:22:22 +08:00
|
|
|
void SignalToggle(bool started);
|
2024-07-03 18:15:28 +08:00
|
|
|
|
2024-07-03 18:22:22 +08:00
|
|
|
void SubmitFrame(ref int[] buffer);
|
2024-07-03 18:15:28 +08:00
|
|
|
|
2024-07-03 18:22:22 +08:00
|
|
|
void ResizeBegin();
|
2024-07-03 18:15:28 +08:00
|
|
|
|
2024-07-03 18:22:22 +08:00
|
|
|
void ResizeEnd();
|
2024-07-03 18:15:28 +08:00
|
|
|
|
2024-07-03 18:22:22 +08:00
|
|
|
void ApplyRegionChanges();
|
2024-07-03 18:15:28 +08:00
|
|
|
|
2024-07-03 18:22:22 +08:00
|
|
|
void Resume();
|
2024-07-03 18:15:28 +08:00
|
|
|
|
2024-07-03 18:22:22 +08:00
|
|
|
void ToggleAspectRatio(bool keep_aspect);
|
2024-07-03 18:15:28 +08:00
|
|
|
|
2024-07-03 18:22:22 +08:00
|
|
|
void ToggleFPS(bool show_fps);
|
2024-07-03 18:15:28 +08:00
|
|
|
|
2024-07-03 18:22:22 +08:00
|
|
|
void ApplyFilter();
|
|
|
|
}
|
2024-07-03 15:40:13 +08:00
|
|
|
}
|