15#include "TargetConditionals.h"
18#if !defined(JNGL_MAIN_BEGIN)
20 #include <android_native_app_glue.h>
23 extern android_app* androidApp;
25 #define JNGL_MAIN_RETURN (void)
26 #define JNGL_MAIN_BEGIN void android_main(android_app* __androidApp) { \
27 jngl::androidApp = __androidApp;
28 #define JNGL_MAIN_END }
29 #elif defined(__APPLE__) && TARGET_OS_IPHONE
30 #define JNGL_MAIN_RETURN
31 #define JNGL_MAIN_BEGIN void shouldNotBeCalled() {
32 #define JNGL_MAIN_END }
35 #define JNGL_CATCH_EXCEPTION_TO_ERROR_MESSAGE try {
37 #define JNGL_CATCH_EXCEPTION_TO_ERROR_MESSAGE
39 #define JNGL_MAIN_RETURN return
40 #define JNGL_MAIN_BEGIN int main(int argc, char** argv) { \
41 JNGL_CATCH_EXCEPTION_TO_ERROR_MESSAGE \
43 std::vector<std::string> tmp(argc - 1); \
44 for (int i = 1; i < argc; ++i) { \
45 tmp[i - 1] = argv[i]; \
47 jngl::internal::setArgs(tmp); \
49 jngl::Finally _ZtzNg47T5XSjogv(jngl::hideWindow);
51 #define JNGL_MAIN_END } catch (std::exception& e) { \
52 jngl::errorMessage(e.what()); \
53 return EXIT_FAILURE; \
57 #define JNGL_MAIN_END }
Contains jngl::Finally class.
Functions related to the main window.