aboutsummaryrefslogtreecommitdiffstats
path: root/src/comm.h
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2024-11-17 08:20:17 -0500
committerDavid Robillard <d@drobilla.net>2024-11-24 19:04:07 -0500
commit660d0e3591e6a972f5d4adfd7d0d3bf6cef566f9 (patch)
tree046c2c571efb23cc24fbe90dd885c44dd0b52743 /src/comm.h
parent06bd42a00bd86f5d487727ff8f08797f9286b27f (diff)
downloadjalv-660d0e3591e6a972f5d4adfd7d0d3bf6cef566f9.tar.gz
jalv-660d0e3591e6a972f5d4adfd7d0d3bf6cef566f9.tar.bz2
jalv-660d0e3591e6a972f5d4adfd7d0d3bf6cef566f9.zip
Use message mechanism to pause plugin execution
Diffstat (limited to 'src/comm.h')
-rw-r--r--src/comm.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/comm.h b/src/comm.h
index d570b3a..bd87e13 100644
--- a/src/comm.h
+++ b/src/comm.h
@@ -5,6 +5,7 @@
#define JALV_COMM_H
#include "attributes.h"
+#include "types.h"
#include "lv2/atom/atom.h"
#include "lv2/urid/urid.h"
@@ -24,6 +25,7 @@ typedef enum {
EVENT_TRANSFER, ///< Event transfer for a sequence port (atom)
LATENCY_CHANGE, ///< Change to plugin latency
STATE_REQUEST, ///< Request for a plugin state update (no payload)
+ RUN_STATE_CHANGE, ///< Request to pause or resume running
} JalvMessageType;
/**
@@ -71,6 +73,16 @@ typedef struct {
} JalvLatencyChange;
/**
+ The payload of a RUN_STATE_CHANGE message.
+
+ This message has a fixed sized, and is described in its entirety by this
+ struct.
+*/
+typedef struct {
+ JalvRunState state; ///< Run state to change to
+} JalvRunStateChange;
+
+/**
Write a message in two parts to a ring.
This is used to conveniently write a message with a fixed-size header and