diff options
author | chai <chaifix@163.com> | 2019-03-04 08:59:21 +0800 |
---|---|---|
committer | chai <chaifix@163.com> | 2019-03-04 08:59:21 +0800 |
commit | c19a282e10f51ddd50d198b903f8fbd5a2238b62 (patch) | |
tree | 407cfda6ec917a86135153915a924e38f76c0553 /Source/Asura.Engine/Application.cpp | |
parent | e1472104af014df0e8598f1a3f9b2496b683d6bb (diff) |
*misc
Diffstat (limited to 'Source/Asura.Engine/Application.cpp')
-rw-r--r-- | Source/Asura.Engine/Application.cpp | 29 |
1 files changed, 18 insertions, 11 deletions
diff --git a/Source/Asura.Engine/Application.cpp b/Source/Asura.Engine/Application.cpp index ba5feaa..59f5aae 100644 --- a/Source/Asura.Engine/Application.cpp +++ b/Source/Asura.Engine/Application.cpp @@ -1,4 +1,6 @@ #include "Application.h" +#include "Sdl2/SDL.h" +#include "Exceptions/Exception.h" namespace AsuraEngine { @@ -13,18 +15,23 @@ namespace AsuraEngine } - bool InitGraphics(bool init) + bool Application::Application::InitSubModules(uint flag) { - if (!init) return true; - - } + // ʼģ + #define TryInitSubModule(module_name, func_name) \ + if((flag&ASURA_MODULE_##module_name) && !Application::Init##func_name()) \ + throw Exception("Asura init submodule %s failed.", #module_name); + + TryInitSubModule(GRAPHICS, Graphics); + TryInitSubModule(AUDIO, Audio); + TryInitSubModule(FONT, Font); + TryInitSubModule(INPUT, Input); + TryInitSubModule(MATH, Math); + TryInitSubModule(PHYSICS, Physics); + TryInitSubModule(TIME, Time); + TryInitSubModule(WINDOW, Window); - bool Application::Init(int flag) - { - if (!InitGraphics(flag & ASURA_MODULE_GRAPHICS)) - { - - } + } -} +}
\ No newline at end of file |