From 24bb0db16d2fcd94a5919f616dd9a50b3a131752 Mon Sep 17 00:00:00 2001 From: Steven Le Rouzic Date: Thu, 4 Apr 2024 16:08:55 +0200 Subject: Add io Writer --- deimos/core/os.h | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) (limited to 'deimos/core/os.h') diff --git a/deimos/core/os.h b/deimos/core/os.h index 95b662b..88b1c55 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/io.h" namespace deimos { @@ -21,7 +22,7 @@ public: virtual ~OsConsoleApi() = default; - virtual void Write(OsConsoleType, Span data) = 0; + virtual void Write(OsConsoleType, Span data) = 0; }; class OsApi @@ -32,5 +33,21 @@ public: OsConsoleApi* console{}; }; +class OsConsoleWriter : public IWriter +{ + OsConsoleApi* m_api; + OsConsoleType m_type; + +public: + constexpr OsConsoleWriter(OsConsoleApi* api, OsConsoleType type) : + m_api{api}, m_type{type} + {} + + constexpr void Write(Span data) override + { + m_api->Write(m_type, data); + } +}; + } // namespace deimos -- cgit