From 20d7c6f946568dafe9025e8c0be1b1f21ae311ca Mon Sep 17 00:00:00 2001 From: David Robillard Date: Mon, 18 Oct 2010 03:25:33 +0000 Subject: Clarify resize-port extension. --- ext/resize-port.lv2/resize-port.h | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'ext/resize-port.lv2/resize-port.h') diff --git a/ext/resize-port.lv2/resize-port.h b/ext/resize-port.lv2/resize-port.h index 4ba533b..ad6a5dc 100644 --- a/ext/resize-port.lv2/resize-port.h +++ b/ext/resize-port.lv2/resize-port.h @@ -35,6 +35,16 @@ typedef struct { * This function MAY return false, in which case the port buffer was * not resized and the port is still connected to the same location. * Plugins MUST gracefully handle this situation. + * + * This function MUST NOT be called from any context other than + * the context associated with the port of the given index. + * + * The host MUST preserve the contents of the port buffer when + * resizing. + * + * Plugins MAY resize a port many times in a single run callback. + * Hosts SHOULD make this an inexpensive as possible (i.e. plugins + * can liberally use this function in a similar way to realloc). */ bool (*resize_port)(LV2_Resize_Port_Feature_Data data, uint32_t index, -- cgit v1.2.1