From 6672e5727516eea194ca278731280cd08f1d3937 Mon Sep 17 00:00:00 2001 From: David Robillard Date: Thu, 19 Feb 2015 09:38:37 +0000 Subject: Add lilv_state_emit_port_values() for special port value handling. git-svn-id: http://svn.drobilla.net/lad/trunk/lilv@5586 a436a847-0d15-0410-975c-d299462d15a1 --- lilv/lilv.h | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'lilv') diff --git a/lilv/lilv.h b/lilv/lilv.h index 66f6d00..2248df2 100644 --- a/lilv/lilv.h +++ b/lilv/lilv.h @@ -1368,6 +1368,22 @@ typedef void (*LilvSetPortValueFunc)(const char* port_symbol, uint32_t size, uint32_t type); +/** + Enumerate the port values in a state snapshot. + @param state The state to retrieve port values from. + @param set_value A function to receive port values. + @param user_data User data to pass to `set_value`. + + This function is a subset of lilv_state_restore() that only fires the + `set_value` callback and does not directly affect a plugin instance. This + is useful in hosts that need to retrieve the port values in a state snapshot + for special handling. +*/ +LILV_API void +lilv_state_emit_port_values(const LilvState* state, + LilvSetPortValueFunc set_value, + void* user_data); + /** Restore a plugin instance from a state snapshot. @param state The state to restore, which must apply to the correct plugin. -- cgit v1.2.1