FreeRTOS Emulator with SDL2 Based Graphics and Input Library
1.0
A POSIX wrapper to run FreeRTOS on an x86 machine with some basic input and output libraries aimed at making teaching FreeRTOS simpler.
|
Utilities required by other gfx_XXX files. More...
#include <linux/unistd.h>
#include <assert.h>
#include "include/gfx_event.h"
#include "task.h"
#include "semphr.h"
#include "SDL2/SDL.h"
#include "SDL2/SDL_mouse.h"
#include "gfx_draw.h"
#include "gfx_utils.h"
#include "gfx_print.h"
Classes | |
struct | mouse |
Macros | |
#define | FETCH_BLOCK_S 0 |
#define | FETCH_NONBLOCK_S 1 |
#define | FETCH_NO_GL_CHECK_S 2 |
Typedefs | |
typedef struct mouse | mouse_t |
Functions | |
int | gfxEventFetchEvents (int flags) |
Polls all outstanding SDL Events. Should be called from Draw Loop that holds the OpenGL context. More... | |
signed short | gfxEventGetMouseX (void) |
Returns a copy of the mouse's most recent X coord (in pixels) More... | |
signed short | gfxEventGetMouseY (void) |
Returns a copy of the mouse's most recent Y coord (in pixels) More... | |
signed char | gfxEventGetMouseLeft (void) |
Returns a copy of the mouse's left button status. More... | |
signed char | gfxEventGetMouseRight (void) |
Returns a copy of the mouse's right button status. More... | |
signed char | gfxEventGetMouseMiddle (void) |
Returns a copy of the mouse's middle button status. More... | |
int | gfxEventInit (void) |
Initializes the GFX Event backend. More... | |
void | gfxEventExit (void) |
Deinitializes the GFX Event backend. More... | |
Variables | |
QueueHandle_t | buttonInputQueue = NULL |
mouse_t | mouse |
xSemaphoreHandle | fetch_lock |
Utilities required by other gfx_XXX files.
---------------------------------------------------------------------- Copyright (C) Alexander Hoffman, 2019 This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>. ----------------------------------------------------------------------
#define FETCH_BLOCK_S 0 |
#define FETCH_NO_GL_CHECK_S 2 |
#define FETCH_NONBLOCK_S 1 |
xSemaphoreHandle fetch_lock |