diff options
Diffstat (limited to 'src/window/device.h')
-rw-r--r-- | src/window/device.h | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/src/window/device.h b/src/window/device.h new file mode 100644 index 0000000..70a388e --- /dev/null +++ b/src/window/device.h @@ -0,0 +1,23 @@ +#pragma once + +#include <forstio/async/async.h> +#include <forstio/core/common.h> + +#include <string_view> +#include <variant> + +#include "window.h" + +namespace saw { +class device { +public: + virtual ~device() = default; + + virtual own<window> create_window(const video_mode &mode, + std::string_view title_view) = 0; + virtual void flush() = 0; +}; + +class io_provider; +own<device> create_device(io_provider &provider); +} // namespace saw |