From e47baca4f23db43ec91fbf64d5d06d7c0dbee495 Mon Sep 17 00:00:00 2001 From: chai Date: Sat, 6 Apr 2019 07:39:49 +0800 Subject: *misc --- source/modules/asura-utils/io/binding/_file.cpp | 2 +- source/modules/asura-utils/io/binding/_file_system.cpp | 4 ++-- source/modules/asura-utils/io/decoded_data.h | 1 + source/modules/asura-utils/io/file.cpp | 8 ++++---- source/modules/asura-utils/io/file.h | 12 ++++++------ source/modules/asura-utils/io/file_data.h | 2 +- source/modules/asura-utils/io/file_system.cpp | 8 ++++---- source/modules/asura-utils/io/file_system.h | 10 +++++----- source/modules/asura-utils/io/renewable.h | 9 --------- source/modules/asura-utils/math/matrix44.h | 2 ++ source/modules/asura-utils/scripting/portable.hpp | 3 ++- source/modules/asura-utils/type.h | 6 +++--- 12 files changed, 31 insertions(+), 36 deletions(-) (limited to 'source/modules/asura-utils') diff --git a/source/modules/asura-utils/io/binding/_file.cpp b/source/modules/asura-utils/io/binding/_file.cpp index 2de7882..c44bc90 100644 --- a/source/modules/asura-utils/io/binding/_file.cpp +++ b/source/modules/asura-utils/io/binding/_file.cpp @@ -186,7 +186,7 @@ namespace AsuraEngine LUAX_PREPARE(L, File); size_t size = 0; - BufferMode mode = self->GetBuffer(asura_out size); + BufferMode mode = self->GetBuffer(ASURA_OUT size); state.Push((int)size); state.Push((int)mode); return 2; diff --git a/source/modules/asura-utils/io/binding/_file_system.cpp b/source/modules/asura-utils/io/binding/_file_system.cpp index 2efc4f6..3843451 100644 --- a/source/modules/asura-utils/io/binding/_file_system.cpp +++ b/source/modules/asura-utils/io/binding/_file_system.cpp @@ -113,7 +113,7 @@ namespace AsuraEngine cc8* path = state.CheckValue(1); std::string mp; - if (fs->GetMountPoint(path, asura_out mp)) + if (fs->GetMountPoint(path, ASURA_OUT mp)) state.Push(mp); else state.PushNil(); @@ -246,7 +246,7 @@ namespace AsuraEngine cc8* path = state.CheckValue(1); std::vector items; - if(fs->GetDirectoryItems(path, asura_out items)) + if(fs->GetDirectoryItems(path, ASURA_OUT items)) { lua_newtable(L); // item list for (int i = 0; i < items.size(); ++i) diff --git a/source/modules/asura-utils/io/decoded_data.h b/source/modules/asura-utils/io/decoded_data.h index 724dbac..882556c 100644 --- a/source/modules/asura-utils/io/decoded_data.h +++ b/source/modules/asura-utils/io/decoded_data.h @@ -2,6 +2,7 @@ #define __ASURA_ENGINE_DATA_H__ #include + #include #include "../scripting/portable.hpp" diff --git a/source/modules/asura-utils/io/file.cpp b/source/modules/asura-utils/io/file.cpp index 690f405..9e89c85 100644 --- a/source/modules/asura-utils/io/file.cpp +++ b/source/modules/asura-utils/io/file.cpp @@ -118,7 +118,7 @@ namespace AsuraEngine return PHYSFS_fileLength(mFileHandle); } - size_t File::Read(asura_out DataBuffer* dst, size_t length) + size_t File::Read(ASURA_OUT DataBuffer* dst, size_t length) { ASSERT(dst); @@ -140,7 +140,7 @@ namespace AsuraEngine return size; } - size_t File::ReadAll(asura_out DataBuffer* dst) + size_t File::ReadAll(ASURA_OUT DataBuffer* dst) { ASSERT(dst); @@ -192,7 +192,7 @@ namespace AsuraEngine return mFileHandle != nullptr && PHYSFS_seek(mFileHandle, pos) != 0; } - bool File::Write(asura_ref DataBuffer* src) + bool File::Write(ASURA_REF DataBuffer* src) { if (!mFileHandle || (mMode != FILE_MODE_APPEND && mMode != FILE_MODE_WRITE)) throw Exception("File is not opened for writing."); @@ -264,7 +264,7 @@ namespace AsuraEngine return true; } - File::BufferMode File::GetBuffer(asura_out size_t& size) + File::BufferMode File::GetBuffer(ASURA_OUT size_t& size) { size = mBufferSize; return mBufferMode; diff --git a/source/modules/asura-utils/io/file.h b/source/modules/asura-utils/io/file.h index 9af8919..56077e0 100644 --- a/source/modules/asura-utils/io/file.h +++ b/source/modules/asura-utils/io/file.h @@ -57,9 +57,9 @@ namespace AsuraEngine /// /// 读取到data buffer里,并返回读入的内容 /// - size_t Read(asura_out DataBuffer* dst, size_t length); - size_t ReadAll(asura_out DataBuffer* dst); - size_t ReadAsync(asura_out DataBuffer* dst); + size_t Read(ASURA_OUT DataBuffer* dst, size_t length); + size_t ReadAll(ASURA_OUT DataBuffer* dst); + size_t ReadAsync(ASURA_OUT DataBuffer* dst); /// /// 是否读到了文件结尾 @@ -69,12 +69,12 @@ namespace AsuraEngine /// /// 将data buffer中的内容写入,并返回是否成功 /// - bool Write(asura_ref DataBuffer* src); + bool Write(ASURA_REF DataBuffer* src); /// /// 异步写文件,将写文件task加入thread的队列。 /// - bool WriteAsync(asura_ref DataBuffer* src, AEThreading::Thread* thread); + bool WriteAsync(ASURA_REF DataBuffer* src, AEThreading::Thread* thread); /// /// 如果开启了缓冲,强制清空缓冲区,写入文件。 @@ -99,7 +99,7 @@ namespace AsuraEngine /// /// 获取缓冲区大小和模式 /// - BufferMode GetBuffer(asura_out size_t& size); + BufferMode GetBuffer(ASURA_OUT size_t& size); const std::string& GetFileName(); const std::string& GetName(); diff --git a/source/modules/asura-utils/io/file_data.h b/source/modules/asura-utils/io/file_data.h index f5a6085..cd69477 100644 --- a/source/modules/asura-utils/io/file_data.h +++ b/source/modules/asura-utils/io/file_data.h @@ -49,7 +49,7 @@ namespace AsuraEngine /// /// Data buffer不会再filedata析构时销毁,当lua引用计数为0时由lua调用GC销毁。创建mData时会添加一个成员引用。 /// - asura_ref DataBuffer* mData; + ASURA_REF DataBuffer* mData; Luax::LuaxMemberRef mDataRef; std::string mFileName; ///< 包含扩展名的文件名 diff --git a/source/modules/asura-utils/io/file_system.cpp b/source/modules/asura-utils/io/file_system.cpp index 30e7861..20f3cb2 100644 --- a/source/modules/asura-utils/io/file_system.cpp +++ b/source/modules/asura-utils/io/file_system.cpp @@ -83,7 +83,7 @@ namespace AsuraEngine } } - bool Filesystem::GetMountPoint(const std::string& locpath, asura_out std::string& mountpoint) + bool Filesystem::GetMountPoint(const std::string& locpath, ASURA_OUT std::string& mountpoint) { if (!mInited) return false; @@ -125,7 +125,7 @@ namespace AsuraEngine return true; } - bool Filesystem::Write(const std::string& name, asura_ref DataBuffer* buffer) + bool Filesystem::Write(const std::string& name, ASURA_REF DataBuffer* buffer) { File file(name); file.Open(File::FILE_MODE_WRITE); @@ -133,7 +133,7 @@ namespace AsuraEngine throw Exception("Data could not be written."); } - bool Filesystem::Append(const std::string& name, asura_ref DataBuffer* buffer) + bool Filesystem::Append(const std::string& name, ASURA_REF DataBuffer* buffer) { File file(name); file.Open(File::FILE_MODE_APPEND); @@ -170,7 +170,7 @@ namespace AsuraEngine return true; } - bool Filesystem::GetFileInfo(const std::string& filepath, asura_out FileInfo* info) + bool Filesystem::GetFileInfo(const std::string& filepath, ASURA_OUT FileInfo* info) { if (!mInited) return false; diff --git a/source/modules/asura-utils/io/file_system.h b/source/modules/asura-utils/io/file_system.h index 3a33504..849cbb6 100644 --- a/source/modules/asura-utils/io/file_system.h +++ b/source/modules/asura-utils/io/file_system.h @@ -59,20 +59,20 @@ namespace AsuraEngine bool Unmount(const std::string& locpath); bool Unmount(DataBuffer* db); - bool GetMountPoint(const std::string& locpath, asura_out std::string& mountpoint); + bool GetMountPoint(const std::string& locpath, ASURA_OUT std::string& mountpoint); void SetWriteDirectory(const std::string locpath); std::string GetWriteDirectory(); File* NewFile(const std::string& name); bool NewDirectory(const std::string& path); - bool Write(const std::string& path, asura_ref DataBuffer* buffer); - bool Append(const std::string& path, asura_ref DataBuffer* buffer); + bool Write(const std::string& path, ASURA_REF DataBuffer* buffer); + bool Append(const std::string& path, ASURA_REF DataBuffer* buffer); bool Remove(const std::string& path); FileData* Read(const std::string& path); - bool GetFileInfo(const std::string& path, asura_out FileInfo* info); + bool GetFileInfo(const std::string& path, ASURA_OUT FileInfo* info); - bool GetDirectoryItems(const std::string& path, asura_out std::vector& items) { return false; }; + bool GetDirectoryItems(const std::string& path, ASURA_OUT std::vector& items) { return false; }; private: diff --git a/source/modules/asura-utils/io/renewable.h b/source/modules/asura-utils/io/renewable.h index 4d047ea..fd6c638 100644 --- a/source/modules/asura-utils/io/renewable.h +++ b/source/modules/asura-utils/io/renewable.h @@ -19,15 +19,6 @@ namespace AsuraEngine public: Renewable() {}; virtual ~Renewable() {}; - - /// - /// 继承Renewable的需要提供一个Update方法 - /// - /// 依据Effective C++条款09.应该禁止在构造函数中调用virtual方法,所以这里的Update - /// 被从构造函数中抽离,需要手动调用Update。 - /// - virtual bool Update(AEIO::DecodedData* decode_data) = 0; - }; } diff --git a/source/modules/asura-utils/math/matrix44.h b/source/modules/asura-utils/math/matrix44.h index fa5be33..9ff0288 100644 --- a/source/modules/asura-utils/math/matrix44.h +++ b/source/modules/asura-utils/math/matrix44.h @@ -1,6 +1,8 @@ #ifndef __ASURA_MATRIX_H__ #define __ASURA_MATRIX_H__ +#include "../scripting/portable.hpp" + namespace AsuraEngine { namespace Math diff --git a/source/modules/asura-utils/scripting/portable.hpp b/source/modules/asura-utils/scripting/portable.hpp index 1c05163..cb8e2eb 100644 --- a/source/modules/asura-utils/scripting/portable.hpp +++ b/source/modules/asura-utils/scripting/portable.hpp @@ -20,7 +20,8 @@ namespace AsuraEngine using Object = Luax::LuaxObject; /// - /// 要注册给lua的native类需要继承此模板。 + /// 要注册给lua的native类需要继承此模板。BASE指定基类,默认是LuaxObject,如果指定基类 + /// 必须是LuaxObject的派生类、 /// template using Portable = Luax::LuaxNativeClass; diff --git a/source/modules/asura-utils/type.h b/source/modules/asura-utils/type.h index 738c4f1..f760205 100644 --- a/source/modules/asura-utils/type.h +++ b/source/modules/asura-utils/type.h @@ -82,10 +82,10 @@ namespace AsuraEngine //--------------------------------------------------------------------------------// // 扩展关键字 -#define asura_throw(ex) throw(ex) // 暗示抛出异常 +#define ASURA_THROW(ex) throw(ex) // 暗示抛出异常 -#define asura_out -#define asura_ref +#define ASURA_OUT +#define ASURA_REF } // namespace AsuraEngine -- cgit v1.1-26-g67d0