+void
+OSCSelectObserver::send_end ()
+{
+ send_connections.drop_connections ();
+ for (uint32_t i = 1; i <= send_size; i++) {
+ if (gainmode) {
+ _osc.float_message_with_id ("/select/send_fader", i, 0, in_line, addr);
+ } else {
+ _osc.float_message_with_id ("/select/send_gain", i, -193, in_line, addr);
+ }
+ // next enable
+ _osc.float_message_with_id ("/select/send_enable", i, 0, in_line, addr);
+ // next name
+ _osc.text_message_with_id ("/select/send_name", i, " ", in_line, addr);
+ }
+ // need to delete or clear send_timeout
+ send_size = 0;
+ send_timeout.clear();
+}
+
+void
+OSCSelectObserver::set_plugin_id (int id, uint32_t page)
+{
+ plug_id = id;
+ plug_page = page;
+ renew_plugin ();
+}
+
+void
+OSCSelectObserver::set_plugin_page (uint32_t page)
+{
+ plug_page = page;
+ renew_plugin ();
+}
+
+void
+OSCSelectObserver::set_plugin_size (uint32_t size)
+{
+ plug_page_size = size;
+ renew_plugin ();
+}
+
+void
+OSCSelectObserver::renew_plugin () {
+ plugin_connections.drop_connections ();
+ plugin_init();
+}
+