32 lines
694 B
C++
32 lines
694 B
C++
#pragma once
|
|
|
|
#include "../video_mode.h"
|
|
#include "../window.h"
|
|
|
|
#include <forstio/async/async.h>
|
|
|
|
#include <string_view>
|
|
|
|
namespace saw {
|
|
class gl_window {
|
|
public:
|
|
virtual ~gl_window() = default;
|
|
|
|
/*
|
|
* Bind the current window as the default framebuffer target (id 0)
|
|
* This is different to the call glBindFramebuffer(GLuint framebuffer_id);
|
|
*/
|
|
virtual void bind() = 0;
|
|
virtual void show() = 0;
|
|
virtual void hide() = 0;
|
|
virtual void swap() = 0;
|
|
|
|
virtual const video_mode &videoMode() const = 0;
|
|
virtual const std::string_view title() const = 0;
|
|
|
|
virtual void resize(size_t height, size_t width) = 0;
|
|
|
|
virtual conveyor<window::variant_event> onevent() = 0;
|
|
};
|
|
} // namespace saw
|