#include <tickit.h> void tickit_run(Tickit *t); void tickit_stop(Tickit *t); void tickit_tick(Tickit *t, TickitRunFlags flags);
Link with -ltickit.
tickit_run() starts the IO event loop of the main toplevel instance, allowing it to receive and react to terminal input, and to send output content back to it. Once invoked, this function will block processing IO and not return until the tickit_stop() function is called, or until a SIGINT is received (usually by the user pressing Ctrl-C).
tickit_stop() causes a currently-running call to tickit_run() to return.
tickit_tick() runs one iteration of the IO loop and returns. Its behaviour is controlled by the flags argument, which should be a bitmask of the following flags:
Perform only a single round of IO without blocking. tickit_tick() will check for IO, or timers that are ready, handle those, and return. but will not block further waiting if nothing is yet ready.
Do not perform any terminal setup before waiting on IO events. Usually this is only necessary early in startup, if the program is using the Tickit event loop for its own purposes before starting a terminal interface.
Without this flag, terminal setup will be run once the first time tickit_run or tickit_tick is called, and will remain valid until the toplevel instance is destroyed.
Neither tickit_run(), tickit_stop() nor tickit_tick() return a value.
tickit(7), tickit_watch_io(3), tickit_watch_later(3), tickit_watch_process(3), tickit_watch_signal(3), tickit_watch_timer_after_msec(3), tickit_watch_timer_at_epoch(3), tickit_window_flush(3).
The man pages tickit_stop(3) and tickit_tick(3) are aliases of tickit_run(3).