From f2604d01cda4f8c89f98dc4c356aefb13a77a757 Mon Sep 17 00:00:00 2001 From: Nishi Date: Sat, 30 May 2026 22:41:58 +0900 Subject: [PATCH] add resource interface --- engine/include/fishbone/file.h | 5 +++-- engine/include/fishbone/foundation.h | 1 + engine/include/fishbone/resource.h | 21 +++++++++++++++++++++ engine/src/file.cc | 5 +++++ 4 files changed, 30 insertions(+), 2 deletions(-) create mode 100644 engine/include/fishbone/resource.h diff --git a/engine/include/fishbone/file.h b/engine/include/fishbone/file.h index 3fcd1d7..f7637aa 100644 --- a/engine/include/fishbone/file.h +++ b/engine/include/fishbone/file.h @@ -13,11 +13,12 @@ namespace fishbone { std::ofstream ofs; public: + File(); File(std::string path, std::string type); ~File(); - size_t read(void* buffer, size_t size); - size_t write(const void* buffer, size_t size); + virtual size_t read(void* buffer, size_t size); + virtual size_t write(const void* buffer, size_t size); size_t size; bool good; diff --git a/engine/include/fishbone/foundation.h b/engine/include/fishbone/foundation.h index 3da51d0..374ca7b 100644 --- a/engine/include/fishbone/foundation.h +++ b/engine/include/fishbone/foundation.h @@ -7,5 +7,6 @@ #include #include #include +#include #endif diff --git a/engine/include/fishbone/resource.h b/engine/include/fishbone/resource.h new file mode 100644 index 0000000..7fd1297 --- /dev/null +++ b/engine/include/fishbone/resource.h @@ -0,0 +1,21 @@ +#ifndef __FISHBONE_THREAD_H__ +#define __FISHBONE_THREAD_H__ + +namespace fishbone { + class Resource; +}; // namespace fishbone + +#include +#include + +namespace fishbone { + class Resource { + public: + fishbone::File* open(std::string path); + + Resource(std::string path); + ~Resource(); + }; +}; // namespace fishbone + +#endif diff --git a/engine/src/file.cc b/engine/src/file.cc index 5620858..fce8a35 100644 --- a/engine/src/file.cc +++ b/engine/src/file.cc @@ -1,5 +1,10 @@ #include +fishbone::File::File(){ + this->good = true; + this->size = 0; +} + fishbone::File::File(std::string path, std::string type) { this->good = false; this->size = 0;