aboutsummaryrefslogtreecommitdiffstats
path: root/gfx.h
diff options
context:
space:
mode:
authorinmarket <andrewh@inmarket.com.au>2018-06-23 13:02:07 +1000
committerinmarket <andrewh@inmarket.com.au>2018-06-23 13:02:07 +1000
commit41271d632b74f5cf47c30d3b699eb6b2786f2136 (patch)
tree78bcb729c6d6177ca598f28908fefd186c50e9b6 /gfx.h
parent3b97fb798e96514057bcf17263c1e5dbdcd7da26 (diff)
downloaduGFX-41271d632b74f5cf47c30d3b699eb6b2786f2136.tar.gz
uGFX-41271d632b74f5cf47c30d3b699eb6b2786f2136.tar.bz2
uGFX-41271d632b74f5cf47c30d3b699eb6b2786f2136.zip
Added new type definitions - moving towards V3.0
Diffstat (limited to 'gfx.h')
-rw-r--r--gfx.h306
1 files changed, 1 insertions, 305 deletions
diff --git a/gfx.h b/gfx.h
index e248c701..2d665462 100644
--- a/gfx.h
+++ b/gfx.h
@@ -4,308 +4,4 @@
*
* http://ugfx.org/license.html
*/
-
-/**
- * @file gfx.h
- * @brief GFX system header file.
- *
- * @addtogroup GFX
- *
- * @brief Main module to glue all the others together
- *
- * @{
- */
-
-#ifndef _GFX_H
-#define _GFX_H
-
-// Everything here is C, not C++
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-// ------------------------------ Initial preparation ---------------------------------
-
-// ------------------------------ Load the user configuration ---------------------------------
-
-// Definitions for option configuration
-#define GFXOFF (0)
-#define GFXON (-1)
-
-// gfxconf.h is the user's project configuration for the GFX system.
-#include "gfxconf.h"
-
-// ------------------------------ Determine build environment info - COMPILER, CPU etc ---------------------------------
-
-/**
- * @name GFX compatibility options
- * @{
- */
- /**
- * @brief Include the uGFX V2.x API
- * @details Defaults to GFXON
- */
- #ifndef GFX_COMPAT_V2
- #define GFX_COMPAT_V2 GFXON
- #endif
-/** @} */
-
-#if GFX_COMPAT_V2
- // These need to be defined here for compatibility with V2.x user config files
- #if !defined(FALSE)
- #define FALSE 0
- #endif
- #if !defined(TRUE)
- #define TRUE -1
- #endif
-#endif
-
-// Macro concatination and strify - not API documented
-#define GFXCAT(a, b) a ## b
-#define GFXCATX(a, b) GFXCAT(a, b)
-#define GFXSTR(a) #a
-#define GFXSTRX(a) GFXSTR(a)
-
-// Include Compiler and CPU support
-#include "src/gfx_compilers.h"
-
-// ------------------------------ Enumerate all options ---------------------------------
-/**
- * @name GFX sub-systems that can be turned on
- * @{
- */
- /**
- * @brief GFX Driver API
- * @details Defaults to GFXON
- * @note Not much useful can be done without a driver
- */
- #ifndef GFX_USE_GDRIVER
- #define GFX_USE_GDRIVER GFXON
- #endif
- /**
- * @brief GFX Graphics Display Basic API
- * @details Defaults to GFXOFF
- * @note Also add the specific hardware driver to your makefile.
- * Eg. include $(GFXLIB)/drivers/gdisp/Nokia6610/driver.mk
- */
- #ifndef GFX_USE_GDISP
- #define GFX_USE_GDISP GFXOFF
- #endif
- /**
- * @brief GFX Graphics Windowing API
- * @details Defaults to GFXOFF
- * @details Extends the GDISP API to add the concept of graphic windows.
- * @note Also supports high-level "window" objects such as console windows,
- * buttons, graphing etc
- */
- #ifndef GFX_USE_GWIN
- #define GFX_USE_GWIN GFXOFF
- #endif
- /**
- * @brief GFX Event API
- * @details Defaults to GFXOFF
- * @details Defines the concept of a "Source" that can send "Events" to "Listeners".
- */
- #ifndef GFX_USE_GEVENT
- #define GFX_USE_GEVENT GFXOFF
- #endif
- /**
- * @brief GFX Timer API
- * @details Defaults to GFXOFF
- * @details Provides thread context timers - both one-shot and periodic.
- */
- #ifndef GFX_USE_GTIMER
- #define GFX_USE_GTIMER GFXOFF
- #endif
- /**
- * @brief GFX Queue API
- * @details Defaults to GFXOFF
- * @details Provides queue management.
- */
- #ifndef GFX_USE_GQUEUE
- #define GFX_USE_GQUEUE GFXOFF
- #endif
- /**
- * @brief GFX Input Device API
- * @details Defaults to GFXOFF
- * @note Also add the specific hardware drivers to your makefile.
- * Eg.
- * include $(GFXLIB)/drivers/ginput/toggle/Pal/driver.mk
- * and...
- * include $(GFXLIB)/drivers/ginput/touch/MCU/driver.mk
- */
- #ifndef GFX_USE_GINPUT
- #define GFX_USE_GINPUT GFXOFF
- #endif
- /**
- * @brief GFX Generic Periodic ADC API
- * @details Defaults to GFXOFF
- */
- #ifndef GFX_USE_GADC
- #define GFX_USE_GADC GFXOFF
- #endif
- /**
- * @brief GFX Audio API
- * @details Defaults to GFXOFF
- * @note Also add the specific hardware drivers to your makefile.
- * Eg.
- * include $(GFXLIB)/drivers/gaudio/GADC/driver.mk
- */
- #ifndef GFX_USE_GAUDIO
- #define GFX_USE_GAUDIO GFXOFF
- #endif
- /**
- * @brief GFX Miscellaneous Routines API
- * @details Defaults to GFXOFF
- * @note Turning this on without turning on any GMISC_NEED_xxx macros will result
- * in no extra code being compiled in. GMISC is made up from the sum of its
- * parts.
- */
- #ifndef GFX_USE_GMISC
- #define GFX_USE_GMISC GFXOFF
- #endif
- /**
- * @brief GFX File API
- * @details Defaults to GFXOFF
- */
- #ifndef GFX_USE_GFILE
- #define GFX_USE_GFILE GFXOFF
- #endif
- /**
- * @brief GFX Translation Support API
- * @details Defaults to GFXOFF
- */
- #ifndef GFX_USE_GTRANS
- #define GFX_USE_GTRANS GFXOFF
- #endif
-/** @} */
-
-/**
- * @name GFX compatibility options
- * @{
- */
- /**
- * @brief Include the uGFX V2.x Old Colors
- * @details Defaults to GFXON
- * @pre Requires GFX_COMPAT_V2 to be GFXON
- * @note The old color definitions (particularly Red, Green & Blue) can
- * cause symbol conflicts with many platforms eg Win32, STM32 HAL etc.
- * Although officially these symbols are part of the V2.x API, this
- * option allows them to be turned off even when the rest of the V2.x
- * API is turned on.
- */
- #ifndef GFX_COMPAT_OLDCOLORS
- #define GFX_COMPAT_OLDCOLORS GFXON
- #endif
-/** @} */
-
-/**
- * Get all the options for each sub-system.
- *
- */
-#include "src/gos/gos_options.h"
-#include "src/gdriver/gdriver_options.h"
-#include "src/gfile/gfile_options.h"
-#include "src/gmisc/gmisc_options.h"
-#include "src/gtrans/gtrans_options.h"
-#include "src/gqueue/gqueue_options.h"
-#include "src/gevent/gevent_options.h"
-#include "src/gtimer/gtimer_options.h"
-#include "src/gdisp/gdisp_options.h"
-#include "src/gwin/gwin_options.h"
-#include "src/ginput/ginput_options.h"
-#include "src/gadc/gadc_options.h"
-#include "src/gaudio/gaudio_options.h"
-
-// ------------------------------ Load driver configuration ---------------------------------
-
-// ------------------------------ Apply configuration rules ---------------------------------
-
-/**
- * Interdependency safety checks on the sub-systems.
- * These must be in dependency order.
- *
- */
-#ifndef GFX_DISPLAY_RULE_WARNINGS
- #define GFX_DISPLAY_RULE_WARNINGS GFXOFF
-#endif
-#include "src/gwin/gwin_rules.h"
-#include "src/ginput/ginput_rules.h"
-#include "src/gdisp/gdisp_rules.h"
-#include "src/gaudio/gaudio_rules.h"
-#include "src/gadc/gadc_rules.h"
-#include "src/gevent/gevent_rules.h"
-#include "src/gtimer/gtimer_rules.h"
-#include "src/gqueue/gqueue_rules.h"
-#include "src/gmisc/gmisc_rules.h"
-#include "src/gtrans/gtrans_rules.h"
-#include "src/gfile/gfile_rules.h"
-#include "src/gdriver/gdriver_rules.h"
-#include "src/gos/gos_rules.h"
-
-// ------------------------------ Define API definitions ---------------------------------
-
-/**
- * Include the sub-system header files
- */
-#include "src/gos/gos.h"
-//#include "src/gdriver/gdriver.h" // This module is only included by source that needs it.
-#include "src/gfile/gfile.h"
-#include "src/gmisc/gmisc.h"
-#include "src/gtrans/gtrans.h"
-#include "src/gqueue/gqueue.h"
-#include "src/gevent/gevent.h"
-#include "src/gtimer/gtimer.h"
-#include "src/gdisp/gdisp.h"
-#include "src/gwin/gwin.h"
-#include "src/ginput/ginput.h"
-#include "src/gadc/gadc.h"
-#include "src/gaudio/gaudio.h"
-
-/**
- * @brief The one call to start it all
- *
- * @note This will initialise each sub-system that has been turned on.
- * For example, if GFX_USE_GDISP is defined then display will be initialised
- * and cleared to black.
- * @note If you define GFX_OS_NO_INIT as GFXON in your gfxconf.h file then ugfx doesn't try to
- * initialise the operating system for you when you call @p gfxInit().
- * @note If you define GFX_OS_EXTRA_INIT_FUNCTION in your gfxconf.h file the macro is the
- * name of a void function with no parameters that is called immediately after
- * operating system initialisation (whether or not GFX_OS_NO_INIT is set).
- * @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
- */
-void gfxInit(void);
-
-/**
- * @brief The one call to end it all
- *
- * @note This will de-initialise each sub-system that has been turned on.
- *
- * @api
- */
-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
-#endif /* _GFX_H */
-/** @} */
-
+#include "src/gfx.h"