From f3ba19b162a89b2081c0598b4a0bf126146e3671 Mon Sep 17 00:00:00 2001 From: Steven Le Rouzic Date: Thu, 4 Apr 2024 22:05:06 +0200 Subject: Add logging system --- deimos/core/io.h | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'deimos/core/io.h') diff --git a/deimos/core/io.h b/deimos/core/io.h index 90caadc..12de30e 100644 --- a/deimos/core/io.h +++ b/deimos/core/io.h @@ -17,5 +17,25 @@ public: virtual void Write(Span) = 0; }; +class BufferWriter : public IWriter +{ + std::byte* m_buffer; + int64_t m_size; + int64_t m_written = 0; + +public: + explicit BufferWriter(Span buffer) : + m_buffer{buffer.begin()}, + m_size{buffer.size()} + {} + + void Write(Span) override; + + constexpr Span GetWritten() const + { + return { m_buffer, m_written }; + } +}; + } // namespace deimos -- cgit