From ad558bdafde7e40b5de79b47d8586aec53cf3f7e Mon Sep 17 00:00:00 2001 From: David Robillard Date: Wed, 19 Sep 2007 23:54:39 +0000 Subject: Toggling of individual node polyphonic state. git-svn-id: http://svn.drobilla.net/lad/ingen@733 a436a847-0d15-0410-975c-d299462d15a1 --- src/libs/engine/OSCClientSender.cpp | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'src/libs/engine/OSCClientSender.cpp') diff --git a/src/libs/engine/OSCClientSender.cpp b/src/libs/engine/OSCClientSender.cpp index 75353981..a2034cda 100644 --- a/src/libs/engine/OSCClientSender.cpp +++ b/src/libs/engine/OSCClientSender.cpp @@ -381,6 +381,30 @@ OSCClientSender::new_port(const std::string& path, } +/** \page client_osc_namespace + *

\b /ingen/polyphonic - Notification an object's polyphonic property has changed. + * \arg \b path (string) - Path of object + * \arg \b polyphonic (bool) - Whether or not object is polyphonic (from it's parent's perspective). + * + * \li This is a notification that the object is externally polyphonic, + * i.e. its parent sees several independent buffers for a single port, one for each voice. + * An object can be internally polyphonic but externally not if the voices are mixed down; + * this is true of DSSI plugins and subpatches with mismatched polyphony.

\n \n + */ +void +OSCClientSender::polyphonic(const std::string& path, + bool polyphonic) +{ + if (!_enabled) + return; + + if (polyphonic) + lo_send(_address, "/ingen/polyphonic", "sT", path.c_str()); + else + lo_send(_address, "/ingen/polyphonic", "sF", path.c_str()); +} + + /** \page client_osc_namespace *

\b /ingen/destroyed - Notification an object has been destroyed * \arg \b path (const std::string&) - Path of object (which no longer exists)

\n \n -- cgit v1.2.1