From 38756822825e20eca3b9e01b735946175223d692 Mon Sep 17 00:00:00 2001 From: Yuqian Yang Date: Sat, 7 Mar 2026 20:42:37 +0800 Subject: Refactor stream. --- include/cru/base/platform/unix/UnixFileStream.h | 6 +----- include/cru/base/platform/win/Stream.h | 12 ++---------- 2 files changed, 3 insertions(+), 15 deletions(-) (limited to 'include/cru/base/platform') diff --git a/include/cru/base/platform/unix/UnixFileStream.h b/include/cru/base/platform/unix/UnixFileStream.h index 1657bfbb..81174151 100644 --- a/include/cru/base/platform/unix/UnixFileStream.h +++ b/include/cru/base/platform/unix/UnixFileStream.h @@ -19,17 +19,13 @@ class UnixFileStream : public io::Stream { ~UnixFileStream() override; public: - CRU_STREAM_IMPLEMENT_CLOSE_BY_DO_CLOSE - int GetFileDescriptor() const { return file_descriptor_; } protected: Index DoSeek(Index offset, SeekOrigin origin = SeekOrigin::Current) override; Index DoRead(std::byte* buffer, Index offset, Index size) override; Index DoWrite(const std::byte* buffer, Index offset, Index size) override; - - private: - void DoClose(); + void DoClose() override; private: UnixFileDescriptor file_descriptor_; diff --git a/include/cru/base/platform/win/Stream.h b/include/cru/base/platform/win/Stream.h index 104b3bd7..9dd33d35 100644 --- a/include/cru/base/platform/win/Stream.h +++ b/include/cru/base/platform/win/Stream.h @@ -24,15 +24,11 @@ class CRU_BASE_API Win32HandleStream : public io::Stream { Index DoSeek(Index offset, SeekOrigin origin) override; Index DoRead(std::byte* buffer, Index offset, Index size) override; Index DoWrite(const std::byte* buffer, Index offset, Index size) override; + void DoClose() override; public: HANDLE GetHandle() { return handle_; } - CRU_STREAM_IMPLEMENT_CLOSE_BY_DO_CLOSE - - private: - void DoClose(); - private: HANDLE handle_; bool auto_close_; @@ -51,15 +47,11 @@ class CRU_BASE_API ComStream : public io::Stream { Index DoSeek(Index offset, SeekOrigin origin) override; Index DoRead(std::byte* buffer, Index offset, Index size) override; Index DoWrite(const std::byte* buffer, Index offset, Index size) override; + void DoClose() override; public: IStream* GetComStream() { return stream_; } - CRU_STREAM_IMPLEMENT_CLOSE_BY_DO_CLOSE - - private: - void DoClose(); - private: IStream* stream_; bool auto_release_; -- cgit v1.2.3