fxsdk/fxlink/include/fxlink/tooling/sdl2.h
Lephenixnoir 9d30377d90
fxlink: full rewrite; deeper device management and TUI
This commit rewrites the entire device management layer of fxlink on the
libusb side, providing new abstractions that support live/async device
management, including communication.

This system is put to use in a new TUI interactive mode (fxlink -t)
which can run in the background, connects to calculators automatically
without interfering with file transfer tools, and is much more detailed
in its interface than the previous interactive mode (fxlink -i).

The TUI mode will also soon be extended to support sending data.
2023-03-03 00:29:00 +01:00

24 lines
1,014 B
C

//---------------------------------------------------------------------------//
// ==>/[_]\ fxlink: A community communication tool for CASIO calculators. //
// |:::| Made by Lephe' as part of the fxSDK. //
// \___/ License: MIT <https://opensource.org/licenses/MIT> //
//---------------------------------------------------------------------------//
// fxlink.tooling.sdl2: Utilities based on the SDL2 library
//
// Note: all the functions in this file are "neutralized" if the compile-time
// option FXLINK_DISABLE_SDL2 is set. See <fxlink/config.h.in>.
//---
#pragma once
#include <fxlink/protocol.h>
#ifndef FXLINK_DISABLE_SDL2
#include <SDL2/SDL.h>
#endif
/* Display a raw image on the window. If now window has been opened yet, one is
created automatically. */
void fxlink_sdl2_display_raw(struct fxlink_message_image_raw const *raw);
/* Handle SDL events. This should be called regularly from the main thread. */
void fxlink_sdl2_handle_events(void);