summaryrefslogtreecommitdiff
path: root/Source/Asura.Engine/FileSystem
diff options
context:
space:
mode:
Diffstat (limited to 'Source/Asura.Engine/FileSystem')
-rw-r--r--Source/Asura.Engine/FileSystem/DataBuffer.h12
-rw-r--r--Source/Asura.Engine/FileSystem/DecodedData.h8
-rw-r--r--Source/Asura.Engine/FileSystem/Reloadable.h11
-rw-r--r--Source/Asura.Engine/FileSystem/ResourceManager.h4
4 files changed, 19 insertions, 16 deletions
diff --git a/Source/Asura.Engine/FileSystem/DataBuffer.h b/Source/Asura.Engine/FileSystem/DataBuffer.h
index f7d8cba..84d445c 100644
--- a/Source/Asura.Engine/FileSystem/DataBuffer.h
+++ b/Source/Asura.Engine/FileSystem/DataBuffer.h
@@ -4,7 +4,7 @@
#include <cstdlib>
#include "Scripting/Luax.hpp"
-#include "Object.h"
+#include "Scripting/Portable.h"
namespace AsuraEngine
{
@@ -14,17 +14,17 @@ namespace AsuraEngine
///
/// ڴݵķװеʹData bufferװֱʹconst void*ͨresource managerȡ
///
- class DataBuffer final : virtual public Object, public Scripting::Portable
+ class DataBuffer ASURA_FINAL: public Scripting::Portable
{
public:
DataBuffer(const void* data, std::size_t size);
- virtual ~DataBuffer();
+ ~DataBuffer();
+
+ byte* data;
+ size_t size;
- const void* data;
- std::size_t size;
-
//----------------------------------------------------------------------------------------------------------
LUAX_DECL_FACTORY(DataBuffer);
diff --git a/Source/Asura.Engine/FileSystem/DecodedData.h b/Source/Asura.Engine/FileSystem/DecodedData.h
index 927052f..0b661b6 100644
--- a/Source/Asura.Engine/FileSystem/DecodedData.h
+++ b/Source/Asura.Engine/FileSystem/DecodedData.h
@@ -4,7 +4,7 @@
#include <cstdlib>
#include "DataBuffer.h"
-#include "Object.h"
+#include "Scripting/Portable.h"
namespace AsuraEngine
{
@@ -15,14 +15,14 @@ namespace AsuraEngine
/// һ̹߳data̳дࡣͼƬݡƵݵȣһ߳нԭļڲݸʽ
/// ȡ
///
- class DecodedData : virtual public Object
+ ASURA_ABSTRACT class DecodedData
{
public:
///
/// ڴйdataԷһ߳棬Դϵͳء
///
- DecodedData(const DataBuffer* databuffer);
+ DecodedData(const DataBuffer& databuffer);
virtual ~DecodedData();
@@ -31,7 +31,7 @@ namespace AsuraEngine
///
/// ڴеݡ
///
- virtual void Decode(const DataBuffer* buffer) = 0;
+ virtual void Decode(const DataBuffer& buffer) = 0;
};
diff --git a/Source/Asura.Engine/FileSystem/Reloadable.h b/Source/Asura.Engine/FileSystem/Reloadable.h
index e07b094..eb35d3e 100644
--- a/Source/Asura.Engine/FileSystem/Reloadable.h
+++ b/Source/Asura.Engine/FileSystem/Reloadable.h
@@ -1,20 +1,23 @@
#ifndef __ASURA_ENGINE_RELOADABLE_H__
#define __ASURA_ENGINE_RELOADABLE_H__
-#include "Object.h"
+#include "Scripting/Portable.h"
namespace AsuraEngine
{
namespace Filesystem
{
- class Reloadable : virtual public Object
+ ///
+ /// ¹ݽṹͼƬƵ֣ⲿݿֱӹڱ༭¹ڲıhandleԴ
+ ///
+ ASURA_ABSTRACT class Reloadable
{
public:
Reloadable();
- ~Reloadable();
+ virtual ~Reloadable();
- virtual bool Load();
+ // ̳ReloadableҪṩһload
};
diff --git a/Source/Asura.Engine/FileSystem/ResourceManager.h b/Source/Asura.Engine/FileSystem/ResourceManager.h
index b4aef54..e22ce91 100644
--- a/Source/Asura.Engine/FileSystem/ResourceManager.h
+++ b/Source/Asura.Engine/FileSystem/ResourceManager.h
@@ -4,7 +4,7 @@
#include <string>
#include "DataBuffer.h"
-#include "Object.h"
+#include "Scripting/Portable.h"
namespace AsuraEngine
{
@@ -14,7 +14,7 @@ namespace AsuraEngine
///
/// Դء洢ԴָĿ¼ȡ
///
- class ResourceManager final : virtual public Object
+ class ResourceManager ASURA_FINAL
{
public: