diff options
Diffstat (limited to 'deimos/core/os.h')
-rw-r--r-- | deimos/core/os.h | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/deimos/core/os.h b/deimos/core/os.h index 271ecfb..ecbe3cd 100644 --- a/deimos/core/os.h +++ b/deimos/core/os.h @@ -2,6 +2,7 @@ #include "deimos/core/base.h"
#include "deimos/core/id_name.h"
+#include "deimos/core/status.h"
#include "deimos/core/io.h"
namespace deimos
@@ -49,6 +50,18 @@ public: virtual void Commit(void* ptr, int64_t size) = 0;
};
+struct OsWindowHandle;
+
+class OsWindowApi
+{
+public:
+ OsWindowApi() = default;
+ deimos_NO_COPY_MOVE(OsWindowApi);
+ virtual ~OsWindowApi() = default;
+
+ virtual StatusOr<gsl::owner<OsWindowHandle*>> Create(gsl::czstring title, int32_t width, int32_t height) = 0;
+};
+
class OsApi
{
public:
@@ -57,6 +70,7 @@ public: OsConsoleApi* console{};
OsDllApi* dll{};
OsVirtualMemoryApi* virtual_memory{};
+ OsWindowApi* window{};
};
class OsConsoleWriter : public IWriter
|