diff options
Diffstat (limited to 'core/src/Utils/IO/DataStream.hpp')
-rw-r--r-- | core/src/Utils/IO/DataStream.hpp | 30 |
1 files changed, 15 insertions, 15 deletions
diff --git a/core/src/Utils/IO/DataStream.hpp b/core/src/Utils/IO/DataStream.hpp index d1f3647..fa22549 100644 --- a/core/src/Utils/IO/DataStream.hpp +++ b/core/src/Utils/IO/DataStream.hpp @@ -1,11 +1,11 @@ #pragma once +#include "FileStream.hpp" #include "cplt_fwd.hpp" #include <bit> #include <cstddef> #include <cstdint> -#include <fstream> #include <span> class BaseDataStream @@ -21,7 +21,7 @@ public: class InputDataStream : public BaseDataStream { private: - std::fstream mBackend; + InputFileStream mBackend; public: static constexpr bool IsSerializer() @@ -29,7 +29,7 @@ public: return false; } - InputDataStream(std::fstream stream); + InputDataStream(InputFileStream stream); void ReadBytes(size_t byteCount, std::byte* buffer); void ReadBytes(size_t byteCount, char* buffer); @@ -65,7 +65,7 @@ public: { if constexpr (requires(TObject t) { t.ReadFromDataStream(std::declval<BaseDataStream>()); }) { obj.ReadFromDataStream(*this); - } else if constexpr (requires(TObject t) { t.OperateIOProxy(std::declval<DataInputStream>()); }) { + } else if constexpr (requires(TObject t) { t.OperateIOProxy(std::declval<InputDataStream>()); }) { obj.OperateIOProxy(*this); } else { static_assert(false && sizeof(TObject), "This type does not have integration with InputDataStream."); @@ -82,25 +82,25 @@ public: // Proxy functions for OperateIOProxy template <class T> - void Bytes(size_t byteCount, T* buffer) const + void Bytes(size_t byteCount, T* buffer) { ReadBytes(byteCount, buffer); } template <class T> - void Value(T& t) const + void Value(T& t) { Read(t); } template <class T> - void Object(T& obj) const + void Object(T& obj) { ReadObject(obj); } template <class TObject, class TAdapter> - void ObjectAdapted(TObject& obj, TAdapter&& adapter) const + void ObjectAdapted(TObject& obj, TAdapter&& adapter) { ReadObjectAdapted(obj, adapter); } @@ -109,7 +109,7 @@ public: class OutputDataStream : public BaseDataStream { private: - std::fstream mBackend; + OutputFileStream mBackend; public: static constexpr bool IsSerializer() @@ -117,7 +117,7 @@ public: return true; } - OutputDataStream(std::fstream stream); + OutputDataStream(OutputFileStream stream); void WriteBytes(size_t byteCount, const std::byte* buffer); void WriteBytes(size_t byteCount, const char* buffer); @@ -151,7 +151,7 @@ public: { if constexpr (requires(TObject t) { t.WriteToDataStream(std::declval<BaseDataStream>()); }) { obj.WriteToDataStream(*this); - } else if constexpr (requires(TObject t) { t.OperateIOProxy(std::declval<DataOutputStream>()); }) { + } else if constexpr (requires(TObject t) { t.OperateIOProxy(std::declval<OutputDataStream>()); }) { obj.OperateIOProxy(*this); } else { static_assert(false && sizeof(TObject), "This type does not have integration with OutputDataStream."); @@ -168,25 +168,25 @@ public: // Proxy functions for OperateIOProxy template <class T> - void Bytes(size_t byteCount, T* buffer) const + void Bytes(size_t byteCount, T* buffer) { WriteBytes(byteCount, buffer); } template <class T> - void Value(T t) const + void Value(T t) { Write(t); } template <class T> - void Object(T& obj) const + void Object(T& obj) { WriteObject(obj); } template <class TObject, class TAdapter> - void ObjectAdapted(TObject& obj, TAdapter&& adapter) const + void ObjectAdapted(TObject& obj, TAdapter&& adapter) { WriteObjectAdapted(obj, adapter); } |