aboutsummaryrefslogtreecommitdiff
path: root/vis.h
diff options
context:
space:
mode:
Diffstat (limited to 'vis.h')
-rw-r--r--vis.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/vis.h b/vis.h
index 60cbb12..a73753e 100644
--- a/vis.h
+++ b/vis.h
@@ -153,6 +153,18 @@ void vis_resume(Vis*);
*/
bool vis_signal_handler(Vis*, int signum, const siginfo_t *siginfo, const void *context);
/**
+ * Interrupt long running operation.
+ * @rst
+ * .. warning:: There is no guarantee that a long running operation is actually
+ * interrupted. It is analogous to cooperative multitasking where
+ * the operation has to voluntarily yield control.
+ * .. note:: It is invoked from `vis_signal_handler` when receiving ``SIGINT``.
+ * @endrst
+ */
+void vis_interrupt(Vis*);
+/** Check whether interruption was requested. */
+bool vis_interrupt_requested(Vis*);
+/**
* @}
* @defgroup vis_draw
* @{