mp4chaps Lua script: don't clutter global environment
[ardour.git] / gtk2_ardour / au_pluginui.h
index 807d6b751aa5044d21a13e48d82e565c856b2346..eafe82207824e974e677cdcb5d19932e2352061d 100644 (file)
@@ -14,7 +14,6 @@
     You should have received a copy of the GNU General Public License
     along with this program; if not, write to the Free Software
     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-
 */
 
 #ifndef __gtk2_ardour_auplugin_ui_h__
@@ -62,7 +61,7 @@ class AUPluginUI;
 @interface NotificationObject : NSObject {
        @private
                AUPluginUI* plugin_ui;
-               NSWindow* cocoa_parent;
+               NSWindow* cocoa_parent;
                NSWindow* top_level_parent;
 }
 @end
@@ -75,7 +74,7 @@ class AUPluginUI;
 
 class AUPluginUI : public PlugUIBase, public Gtk::VBox
 {
-  public:
+public:
        AUPluginUI (boost::shared_ptr<ARDOUR::PluginInsert>);
        ~AUPluginUI ();
 
@@ -87,7 +86,7 @@ class AUPluginUI : public PlugUIBase, public Gtk::VBox
        void activate ();
        void deactivate ();
 
-        bool non_gtk_gui() const { return true; }
+       bool non_gtk_gui() const { return true; }
 
        void lower_box_realized ();
        bool lower_box_visibility_notify (GdkEventVisibility*);
@@ -96,7 +95,6 @@ class AUPluginUI : public PlugUIBase, public Gtk::VBox
        void lower_box_unmap ();
        void lower_box_size_request (GtkRequisition*);
        void lower_box_size_allocate (Gtk::Allocation&);
-       bool lower_box_expose (GdkEventExpose*);
 
        void cocoa_view_resized ();
        void on_realize ();
@@ -111,7 +109,7 @@ class AUPluginUI : public PlugUIBase, public Gtk::VBox
        void start_live_resize ();
        void end_live_resize ();
 
-  private:
+private:
        WindowRef wr;
        boost::shared_ptr<ARDOUR::AUPlugin> au;
        int prefheight;
@@ -134,7 +132,7 @@ class AUPluginUI : public PlugUIBase, public Gtk::VBox
 
        NSWindow*           cocoa_window;
        NSView*             au_view;
-        NSRect              last_au_frame;
+       NSRect              last_au_frame;
        bool                in_live_resize;
        uint32_t            plugin_requested_resize;
 
@@ -165,10 +163,20 @@ class AUPluginUI : public PlugUIBase, public Gtk::VBox
 
        bool plugin_class_valid (Class pluginClass);
 
-       static bool idle_meter();
-       static int64_t last_idle;
-       static bool idle_meter_needed;
-       int64_t expose_cnt;
+       friend void au_cf_timer_callback (CFRunLoopTimerRef timer, void* info);
+       static CFRunLoopTimerRef   cf_timer;
+       static void cf_timer_callback ();
+       static int64_t last_timer;
+       static bool timer_needed;
+       static uint64_t timer_callbacks;
+       static uint64_t timer_out_of_range;
+
+       static bool timer_callback ();
+       static sigc::connection timer_connection;
+
+public:
+       static void start_cf_timer ();
+       static void stop_cf_timer ();
 };
 
 #endif /* __gtk2_ardour_auplugin_ui_h__  */