diff options
Diffstat (limited to 'source/modules/asura-utils/IO/IOTask.cpp')
-rw-r--r-- | source/modules/asura-utils/IO/IOTask.cpp | 61 |
1 files changed, 0 insertions, 61 deletions
diff --git a/source/modules/asura-utils/IO/IOTask.cpp b/source/modules/asura-utils/IO/IOTask.cpp deleted file mode 100644 index bfa6726..0000000 --- a/source/modules/asura-utils/IO/IOTask.cpp +++ /dev/null @@ -1,61 +0,0 @@ -#include "FileSystem.h" -#include "IOTask.h" - -#include <iostream> - -using namespace AEScripting; -using namespace Luax; - -namespace AsuraEngine -{ - namespace IO - { - - IOTask::IOTask(const std::string& path, DataBuffer* buffer, IOTaskType type) - : m_Path(path) - , m_Buffer(buffer) - { - if (buffer) - buffer->Retain(); - } - - IOTask::~IOTask() - { - if (m_Buffer) - m_Buffer->Release(); - } - - bool IOTask::Execute() - { - File file(m_Path); - if (m_Type == IOTASK_TYPE_WRITE) - { - - } - // pathȡݱmBuffer - else if (m_Type == IOTASK_TYPE_READ) - { - if (!m_Buffer) - return false; - file.Open(File::FILE_MODE_READ); - file.ReadAll(m_Buffer); - file.Close(); - } - return true; - } - - void IOTask::Invoke(lua_State* invokeThreaad) - { - if (m_Callback) - { - LuaxScopedState state(invokeThreaad); - if (this->PushLuaxMemberRef(state, m_Callback)) - { - this->PushLuaxMemberRef(state, m_BufferRef); - state.Call(1, 0); - } - } - } - - } -} |