OSC: Add group name feedback to strips
[ardour.git] / libs / surfaces / osc / osc_select_observer.h
index 8ad7bf2a96fbc31130f4f7053e3e09cbfca34ea8..34de6be319ec8fa258b6d9bfbd5eab2977998658 100644 (file)
@@ -47,7 +47,13 @@ class OSCSelectObserver
        void renew_plugin (void);
        void eq_restart (int);
        void clear_observer (void);
-       void refresh_strip (bool force);
+       void refresh_strip (boost::shared_ptr<ARDOUR::Stripable> new_strip, uint32_t nsends, uint32_t g_mode, bool force);
+       void set_expand (uint32_t expand);
+       void set_send_page (uint32_t page);
+       void set_send_size (uint32_t size);
+       void set_plugin_id (int id, uint32_t page);
+       void set_plugin_page (uint32_t page);
+       void set_plugin_size (uint32_t size);
 
   private:
        boost::shared_ptr<ARDOUR::Stripable> _strip;
@@ -75,12 +81,23 @@ class OSCSelectObserver
        bool _init;
        float _comp_redux;
        ARDOUR::AutoState as;
+       uint32_t send_page_size;
        uint32_t send_size;
+       uint32_t send_page;
+
        uint32_t nplug_params;
+       uint32_t plug_page_size;
+       uint32_t plug_page;
+       int plug_id;
        uint32_t plug_size;
+       std::vector<int> plug_params;
        int eq_bands;
+       bool _tick_busy;
+       uint32_t _expand;
 
        void name_changed (const PBD::PropertyChange& what_changed);
+       void group_name ();
+       void pi_changed (PBD::PropertyChange const&);
        void change_message (std::string path, boost::shared_ptr<PBD::Controllable> controllable);
        void enable_message (std::string path, boost::shared_ptr<PBD::Controllable> controllable);
        void comp_mode (void);
@@ -98,6 +115,7 @@ class OSCSelectObserver
        void plugin_parameter_changed (int pid, bool swtch, boost::shared_ptr<PBD::Controllable> controllable);
        void send_gain (uint32_t id, boost::shared_ptr<PBD::Controllable> controllable);
        void send_enable (std::string path, uint32_t id, boost::shared_ptr<ARDOUR::Processor> proc);
+       void plug_enable (std::string path, boost::shared_ptr<ARDOUR::Processor> proc);
        void eq_init (void);
        void eq_end (void);
        void no_strip ();