µGFX  2.9
version 2.9
gos_arduino.h
1 /*
2  * This file is subject to the terms of the GFX License. If a copy of
3  * the license was not distributed with this file, you can obtain one at:
4  *
5  * http://ugfx.io/license.html
6  */
7 
8 /**
9  * The arduino GOS implementation is similar to the bare metal raw32 gos implementation.
10  * It uses cooperative multi-tasking. Be careful
11  * when writing device drivers not to disturb the assumptions this creates by performing
12  * call-backs to uGFX code unless you define the INTERRUPTS_OFF() and INTERRUPTS_ON() macros.
13  * It still requires some C runtime library support...
14  * enough startup to initialise the stack, interrupts, static data etc and call main().
15  * setjmp() and longjmp() - for threading
16  * memcpy() - for heap and threading
17  * malloc(), realloc and free() - if GOS_RAW_HEAP_SIZE == 0
18  *
19  * You must also define the following routines in your own code so that timing functions will work...
20  * gTicks gfxSystemTicks(void);
21  * gTicks gfxMillisecondsToTicks(gDelay ms);
22  */
23 #ifndef _GOS_ARDUINO_H
24 #define _GOS_ARDUINO_H
25 
26 #if GFX_USE_OS_ARDUINO
27 
28 #include <Arduino.h>
29 
30 /*===========================================================================*/
31 /* Type definitions */
32 /*===========================================================================*/
33 
34 void gfxHalt(const char *msg);
35 void gfxExit(void);
36 
37 /*===========================================================================*/
38 /* Use the generic thread handling and heap handling */
39 /*===========================================================================*/
40 
41 #define GOS_NEED_X_THREADS GFXON
42 #define GOS_NEED_X_HEAP GFXON
43 
44 #include "gos_x_threads.h"
45 #include "gos_x_heap.h"
46 
47 #endif /* GFX_USE_OS_ARDUINO */
48 #endif /* _GOS_ARDUINO_H */
void gfxExit(void)
Exit the GFX application.
void gfxHalt(const char *msg)
Halt the GFX application due to an error.