From 7826664969f077342e098a1679faadf2b0b590d5 Mon Sep 17 00:00:00 2001 From: inmarket Date: Sat, 4 Mar 2017 17:35:17 +1000 Subject: [PATCH] Make the uGFXMain() prototype always available --- gfx.h | 12 ++++++++++++ src/gfx.c | 3 --- src/gos/gos_freertos.c | 2 -- 3 files changed, 12 insertions(+), 5 deletions(-) diff --git a/gfx.h b/gfx.h index afaf7b87..2e25db88 100644 --- a/gfx.h +++ b/gfx.h @@ -229,6 +229,7 @@ extern "C" { * @note If you define GFX_OS_EXTRA_DEINIT_FUNCTION in your gfxconf.h file the macro is the * name of a void function with no parameters that is called immediately before * operating system de-initialisation (as ugfx is exiting). + * @note If GFX_OS_CALL_UGFXMAIN is set uGFXMain() is called after all initialisation is complete. * * @api */ @@ -243,6 +244,17 @@ extern "C" { */ void gfxDeinit(void); + #if GFX_OS_CALL_UGFXMAIN || defined(__DOXYGEN__) + /** + * @brief The function containing all the user uGFX application code. + * + * @note This is called by gfxInit() and is expected to never return. + * It is defined by the user. + * + * @pre GFX_OS_CALL_UGFXMAIN is GFXON + */ + void uGFXMain(void); + #endif #ifdef __cplusplus } #endif diff --git a/src/gfx.c b/src/gfx.c index e35bcd3d..dac9e470 100644 --- a/src/gfx.c +++ b/src/gfx.c @@ -78,9 +78,6 @@ extern void _gosDeinit(void); extern void _gtransInit(void); extern void _gtransDeinit(void); #endif -#if GFX_OS_CALL_UGFXMAIN - extern void uGFXMain(void); -#endif void gfxInit(void) { diff --git a/src/gos/gos_freertos.c b/src/gos/gos_freertos.c index 93696581..414b0bab 100644 --- a/src/gos/gos_freertos.c +++ b/src/gos/gos_freertos.c @@ -38,8 +38,6 @@ void _gosInit(void) } #if !GFX_OS_NO_INIT && GFX_OS_CALL_UGFXMAIN - extern void uGFXMain(void); - static DECLARE_THREAD_FUNCTION(startUGFX_FreeRTOS, p) { (void) p; uGFXMain();