summaryrefslogtreecommitdiff
path: root/source/libs/asura-lib-core
diff options
context:
space:
mode:
Diffstat (limited to 'source/libs/asura-lib-core')
-rw-r--r--source/libs/asura-lib-core/application.h4
-rw-r--r--source/libs/asura-lib-core/graphics/binding/_canvas.cpp (renamed from source/libs/asura-lib-core/graphics/binding/canvas.binding.cpp)0
-rw-r--r--source/libs/asura-lib-core/graphics/binding/_color.cpp (renamed from source/libs/asura-lib-core/graphics/binding/color.binding.cpp)0
-rw-r--r--source/libs/asura-lib-core/graphics/binding/_gif.cpp (renamed from source/libs/asura-lib-core/graphics/binding/gif.binding.cpp)0
-rw-r--r--source/libs/asura-lib-core/graphics/binding/_image.cpp (renamed from source/libs/asura-lib-core/graphics/binding/image.binding.cpp)0
-rw-r--r--source/libs/asura-lib-core/graphics/binding/_image_data.cpp (renamed from source/libs/asura-lib-core/graphics/binding/image_data.binding.cpp)0
-rw-r--r--source/libs/asura-lib-core/graphics/binding/_mesh2d.cpp (renamed from source/libs/asura-lib-core/graphics/binding/mesh2d.binding.cpp)0
-rw-r--r--source/libs/asura-lib-core/graphics/binding/_mesh2d_data.cpp (renamed from source/libs/asura-lib-core/graphics/binding/mesh2d_data.binding.cpp)0
-rw-r--r--source/libs/asura-lib-core/graphics/binding/_shader.cpp (renamed from source/libs/asura-lib-core/graphics/binding/shader.binding.cpp)0
-rw-r--r--source/libs/asura-lib-core/graphics/binding/_sprite_batch.cpp (renamed from source/libs/asura-lib-core/graphics/binding/sprite_batch.binding.cpp)0
-rw-r--r--source/libs/asura-lib-core/graphics/binding/_window.cpp (renamed from source/libs/asura-lib-core/graphics/binding/window.binding.cpp)0
-rw-r--r--source/libs/asura-lib-core/graphics/image.h4
-rw-r--r--source/libs/asura-lib-core/graphics/stb_decoder.cpp4
-rw-r--r--source/libs/asura-lib-core/input/cursor.h23
-rw-r--r--source/libs/asura-lib-core/input/event.h45
-rw-r--r--source/libs/asura-lib-core/input/input_device.hpp9
-rw-r--r--source/libs/asura-lib-core/input/joypad.h (renamed from source/libs/asura-lib-core/stringmap.cpp)0
-rw-r--r--source/libs/asura-lib-core/input/mouse.defs7
-rw-r--r--source/libs/asura-lib-core/manager.hpp14
-rw-r--r--source/libs/asura-lib-core/singleton.hpp59
-rw-r--r--source/libs/asura-lib-core/stringmap.hpp29
-rw-r--r--source/libs/asura-lib-core/threading/binding/_coroutine.cpp0
-rw-r--r--source/libs/asura-lib-core/threading/binding/_thread.cpp0
-rw-r--r--source/libs/asura-lib-core/threading/coroutine.cpp0
-rw-r--r--source/libs/asura-lib-core/threading/coroutine.h27
-rw-r--r--source/libs/asura-lib-core/threading/thread.cpp0
-rw-r--r--source/libs/asura-lib-core/threading/thread.h0
27 files changed, 99 insertions, 126 deletions
diff --git a/source/libs/asura-lib-core/application.h b/source/libs/asura-lib-core/application.h
index 983dbce..b61154d 100644
--- a/source/libs/asura-lib-core/application.h
+++ b/source/libs/asura-lib-core/application.h
@@ -65,9 +65,9 @@ namespace AsuraEngine
private:
///
- /// Lua state.
+ /// ̵߳lua stateӦѭС
///
- lua_State* mLuaState;
+ lua_State* mMainLuaState;
///
/// Asura libsᰴն˳ʼ˳ʱִ˳
diff --git a/source/libs/asura-lib-core/graphics/binding/canvas.binding.cpp b/source/libs/asura-lib-core/graphics/binding/_canvas.cpp
index e69de29..e69de29 100644
--- a/source/libs/asura-lib-core/graphics/binding/canvas.binding.cpp
+++ b/source/libs/asura-lib-core/graphics/binding/_canvas.cpp
diff --git a/source/libs/asura-lib-core/graphics/binding/color.binding.cpp b/source/libs/asura-lib-core/graphics/binding/_color.cpp
index e69de29..e69de29 100644
--- a/source/libs/asura-lib-core/graphics/binding/color.binding.cpp
+++ b/source/libs/asura-lib-core/graphics/binding/_color.cpp
diff --git a/source/libs/asura-lib-core/graphics/binding/gif.binding.cpp b/source/libs/asura-lib-core/graphics/binding/_gif.cpp
index e69de29..e69de29 100644
--- a/source/libs/asura-lib-core/graphics/binding/gif.binding.cpp
+++ b/source/libs/asura-lib-core/graphics/binding/_gif.cpp
diff --git a/source/libs/asura-lib-core/graphics/binding/image.binding.cpp b/source/libs/asura-lib-core/graphics/binding/_image.cpp
index e69de29..e69de29 100644
--- a/source/libs/asura-lib-core/graphics/binding/image.binding.cpp
+++ b/source/libs/asura-lib-core/graphics/binding/_image.cpp
diff --git a/source/libs/asura-lib-core/graphics/binding/image_data.binding.cpp b/source/libs/asura-lib-core/graphics/binding/_image_data.cpp
index 72e33da..72e33da 100644
--- a/source/libs/asura-lib-core/graphics/binding/image_data.binding.cpp
+++ b/source/libs/asura-lib-core/graphics/binding/_image_data.cpp
diff --git a/source/libs/asura-lib-core/graphics/binding/mesh2d.binding.cpp b/source/libs/asura-lib-core/graphics/binding/_mesh2d.cpp
index e69de29..e69de29 100644
--- a/source/libs/asura-lib-core/graphics/binding/mesh2d.binding.cpp
+++ b/source/libs/asura-lib-core/graphics/binding/_mesh2d.cpp
diff --git a/source/libs/asura-lib-core/graphics/binding/mesh2d_data.binding.cpp b/source/libs/asura-lib-core/graphics/binding/_mesh2d_data.cpp
index 6e15052..6e15052 100644
--- a/source/libs/asura-lib-core/graphics/binding/mesh2d_data.binding.cpp
+++ b/source/libs/asura-lib-core/graphics/binding/_mesh2d_data.cpp
diff --git a/source/libs/asura-lib-core/graphics/binding/shader.binding.cpp b/source/libs/asura-lib-core/graphics/binding/_shader.cpp
index 2f2f507..2f2f507 100644
--- a/source/libs/asura-lib-core/graphics/binding/shader.binding.cpp
+++ b/source/libs/asura-lib-core/graphics/binding/_shader.cpp
diff --git a/source/libs/asura-lib-core/graphics/binding/sprite_batch.binding.cpp b/source/libs/asura-lib-core/graphics/binding/_sprite_batch.cpp
index e69de29..e69de29 100644
--- a/source/libs/asura-lib-core/graphics/binding/sprite_batch.binding.cpp
+++ b/source/libs/asura-lib-core/graphics/binding/_sprite_batch.cpp
diff --git a/source/libs/asura-lib-core/graphics/binding/window.binding.cpp b/source/libs/asura-lib-core/graphics/binding/_window.cpp
index 3befc8c..3befc8c 100644
--- a/source/libs/asura-lib-core/graphics/binding/window.binding.cpp
+++ b/source/libs/asura-lib-core/graphics/binding/_window.cpp
diff --git a/source/libs/asura-lib-core/graphics/image.h b/source/libs/asura-lib-core/graphics/image.h
index 2dd3a4a..d8577ad 100644
--- a/source/libs/asura-lib-core/graphics/image.h
+++ b/source/libs/asura-lib-core/graphics/image.h
@@ -69,8 +69,10 @@ namespace AsuraEngine
LUAX_DECL_METHOD(l_GetSize);
};
-
+
}
}
+namespace AEGraphics = AsuraEngine::Graphics;
+
#endif \ No newline at end of file
diff --git a/source/libs/asura-lib-core/graphics/stb_decoder.cpp b/source/libs/asura-lib-core/graphics/stb_decoder.cpp
index b14d0f3..a13d6b8 100644
--- a/source/libs/asura-lib-core/graphics/stb_decoder.cpp
+++ b/source/libs/asura-lib-core/graphics/stb_decoder.cpp
@@ -1,6 +1,6 @@
-#include "STBDecoder.h"
+#include <asura-lib-utils/exceptions/exception.h>
-#include "Exceptions/Exception.h"
+#include "stb_decoder.h"
#include "stb/stb_image.h"
namespace AsuraEngine
diff --git a/source/libs/asura-lib-core/input/cursor.h b/source/libs/asura-lib-core/input/cursor.h
index da4a765..a8e53a6 100644
--- a/source/libs/asura-lib-core/input/cursor.h
+++ b/source/libs/asura-lib-core/input/cursor.h
@@ -4,16 +4,18 @@
#include <SDL2/SDL.h>
-#include "Scripting/Portable.h"
-#include "Graphics/ImageData.h"
-#include "InputDevice.hpp"
+#include <asura-lib-utils/scripting/portable.hpp>
+
+#include "../graphics/image_data.h"
+
+#include "input_device.hpp"
namespace AsuraEngine
{
namespace Input
{
- class Cursor : public Scripting::Portable
+ class Cursor ASURA_FINAL : public AEScripting::Portable<Cursor>
{
public:
@@ -29,6 +31,8 @@ namespace AsuraEngine
CursorType GetType() const;
SystemCursor GetSystemType() const;
+ LUAX_DECL_FACTORY(Cursor);
+
private:
SDL_Cursor* mCursorHandle;
@@ -36,17 +40,6 @@ namespace AsuraEngine
CursorType mType;
SystemCursor mSystemType;
- public:
-
- //----------------------------------------------------------------------------------------------------------
-
- LUAX_DECL_FACTORY(Cursor);
-
- LUAX_DECL_ENUM(EnumCursorType);
- LUAX_DECL_ENUM(EnumSystemCursor);
-
- //----------------------------------------------------------------------------------------------------------
-
};
}
diff --git a/source/libs/asura-lib-core/input/event.h b/source/libs/asura-lib-core/input/event.h
new file mode 100644
index 0000000..a24e806
--- /dev/null
+++ b/source/libs/asura-lib-core/input/event.h
@@ -0,0 +1,45 @@
+#ifndef __ASURA_ENGINE_EVENT_H__
+#define __ASURA_ENGINE_EVENT_H__
+
+namespace AsuraEngine
+{
+ namespace Input
+ {
+
+ enum EventType
+ {
+ EVENT_BEGIN_MOUSE__ ,
+ EVENT_LEFT_DOWN ,
+ EVENT_LEFT_UP ,
+ EVENT_LEFT_DCLICK ,
+ EVENT_MIDDLE_DOWN ,
+ EVENT_MIDDLE_UP ,
+ EVENT_MIDDLE_DCLICK ,
+ EVENT_RIGHT_DOWN ,
+ EVENT_RIGHT_UP ,
+ EVENT_RIGHT_DCLICK ,
+ EVENT_MOTION ,
+ EVENT_END_MOUSE__ ,
+ EVENT_ENTER_WINDOW ,
+ EVENT_LEAVE_WINDOW ,
+ EVENT_MOUSEWHEEL
+ };
+
+ struct Event
+ {
+ int type;
+ union
+ {
+ // 갴¼
+ struct {
+ int id;
+ } button;
+ };
+ };
+
+ }
+}
+
+namespace AEInput = AsuraEngine::Input;
+
+#endif \ No newline at end of file
diff --git a/source/libs/asura-lib-core/input/input_device.hpp b/source/libs/asura-lib-core/input/input_device.hpp
index eb0b7a3..46f5be8 100644
--- a/source/libs/asura-lib-core/input/input_device.hpp
+++ b/source/libs/asura-lib-core/input/input_device.hpp
@@ -1,9 +1,10 @@
#ifndef __ASURA_ENGINE_INPUT_BASE_H__
#define __ASURA_ENGINE_INPUT_BASE_H__
-#include "Scripting/Portable.h"
-#include "Config.h"
-#include "Singleton.hpp"
+#include <asura-lib-utils/scripting/portable.hpp>
+
+#include "../core_config.h"
+#include "../singleton.hpp"
namespace AsuraEngine
{
@@ -15,7 +16,7 @@ namespace AsuraEngine
///
template<class T>
ASURA_ABSTRACT class InputDevice
- : virtual public Scripting::Portable
+ : virtual public Scripting::Portable<T>
, virtual public Singleton<T>
{
public:
diff --git a/source/libs/asura-lib-core/stringmap.cpp b/source/libs/asura-lib-core/input/joypad.h
index e69de29..e69de29 100644
--- a/source/libs/asura-lib-core/stringmap.cpp
+++ b/source/libs/asura-lib-core/input/joypad.h
diff --git a/source/libs/asura-lib-core/input/mouse.defs b/source/libs/asura-lib-core/input/mouse.defs
new file mode 100644
index 0000000..de1d117
--- /dev/null
+++ b/source/libs/asura-lib-core/input/mouse.defs
@@ -0,0 +1,7 @@
+
+enum MouseButton
+{
+ MOUSE_BUTTON_LEFT,
+ MOUSE_BUTTON_MIDDLE,
+ MOUSE_BUTTON_RIGHT,
+};
diff --git a/source/libs/asura-lib-core/manager.hpp b/source/libs/asura-lib-core/manager.hpp
deleted file mode 100644
index 7b4e272..0000000
--- a/source/libs/asura-lib-core/manager.hpp
+++ /dev/null
@@ -1,14 +0,0 @@
-#ifndef __ASURA_ENGINE_MANAGER_H__
-#define __ASURA_ENGINE_MANAGER_H__
-
-namespace AsuraEngine
-{
-
- class Manager
- {
-
- };
-
-}
-
-#endif \ No newline at end of file
diff --git a/source/libs/asura-lib-core/singleton.hpp b/source/libs/asura-lib-core/singleton.hpp
deleted file mode 100644
index 756209a..0000000
--- a/source/libs/asura-lib-core/singleton.hpp
+++ /dev/null
@@ -1,59 +0,0 @@
-#ifndef __ASURA_SINGLETON_H__
-#define __ASURA_SINGLETON_H__
-
-#include "Config.h"
-
-namespace AsuraEngine
-{
-
- ///
- /// ̳Singletonڵһʵʱʵ֮ٴʵᱨ
- ///
- template<class T>
- class Singleton
- {
- public:
-
- static T* Get()
- {
- // ֮ǰûдһ
- if (!instance) instance = new T;
- // ʵ
- return instance;
- }
-
- static void Destroy()
- {
- delete instance;
- instance = nullptr;
- }
-
- protected:
-
- Singleton()
- {
- // instanceζִһʵǴġ
- ASSERT(!instance);
- // 򣬽ʵΪʵ
- instance = static_cast<T*>(this);
- };
-
- virtual ~Singleton() {};
-
- static T* instance;
-
- private:
-
- Singleton(const Singleton& singleton);
-
- Singleton& operator = (const Singleton& singleton);
-
- };
-
- // ʵʼΪ
- template<class T>
- T* Singleton<T>::instance = nullptr;
-
-}
-
-#endif // __ASURA_SINGLETON_H__ \ No newline at end of file
diff --git a/source/libs/asura-lib-core/stringmap.hpp b/source/libs/asura-lib-core/stringmap.hpp
deleted file mode 100644
index ddba128..0000000
--- a/source/libs/asura-lib-core/stringmap.hpp
+++ /dev/null
@@ -1,29 +0,0 @@
-#ifndef __ASURA_ENGINE_STRINGMAP_H__
-#define __ASURA_ENGINE_STRINGMAP_H__
-
-#include <string>
-
-namespace AsuraEngine
-{
-
- ///
- /// һ˫һһӦӳ䣬shader uniformsstatemathine state parameterID
- ///
- template<typename key_type>
- class StringMap
- {
- public:
-
- bool ContainsKey(const key_type& key);
-
- bool ContainsString(const String& str);
-
- std::string GetStringByKey(const key_type& key);
-
- key_type GetKeyByString(const String& str);
-
- };
-
-}
-
-#endif \ No newline at end of file
diff --git a/source/libs/asura-lib-core/threading/binding/_coroutine.cpp b/source/libs/asura-lib-core/threading/binding/_coroutine.cpp
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/source/libs/asura-lib-core/threading/binding/_coroutine.cpp
diff --git a/source/libs/asura-lib-core/threading/binding/_thread.cpp b/source/libs/asura-lib-core/threading/binding/_thread.cpp
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/source/libs/asura-lib-core/threading/binding/_thread.cpp
diff --git a/source/libs/asura-lib-core/threading/coroutine.cpp b/source/libs/asura-lib-core/threading/coroutine.cpp
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/source/libs/asura-lib-core/threading/coroutine.cpp
diff --git a/source/libs/asura-lib-core/threading/coroutine.h b/source/libs/asura-lib-core/threading/coroutine.h
new file mode 100644
index 0000000..f511e48
--- /dev/null
+++ b/source/libs/asura-lib-core/threading/coroutine.h
@@ -0,0 +1,27 @@
+#ifndef __ASURA_COROUTINE_H__
+#define __ASURA_COROUTINE_H__
+
+#include <asura-lib-utils/scripting/portable.hpp>
+
+namespace AsuraEngine
+{
+ namespace Threading
+ {
+
+ class Coroutine ASURA_FINAL
+ : public AEScripting::Portable<Coroutine>
+ {
+ public:
+
+ LUAX_DECL_FACTORY(Coroutine);
+
+ private:
+
+
+
+ };
+
+ }
+}
+
+#endif \ No newline at end of file
diff --git a/source/libs/asura-lib-core/threading/thread.cpp b/source/libs/asura-lib-core/threading/thread.cpp
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/source/libs/asura-lib-core/threading/thread.cpp
diff --git a/source/libs/asura-lib-core/threading/thread.h b/source/libs/asura-lib-core/threading/thread.h
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/source/libs/asura-lib-core/threading/thread.h