merge MixerActor API (back) into Mixer_UI; make solo/mute/recenable actions there...
[ardour.git] / gtk2_ardour / rhythm_ferret.h
index 1d846450564f8bd4b00ab0d6c942eb1125fdcc5a..f0919168822e47ec083494623ffbd1e8bb2f343f 100644 (file)
@@ -1,3 +1,22 @@
+/*
+    Copyright (C) 2012 Paul Davis
+
+    This program is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 2 of the License, or
+    (at your option) any later version.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    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_rhythm_ferret_h__
 #define __gtk2_ardour_rhythm_ferret_h__
 
@@ -12,6 +31,7 @@
 #include <gtkmm/button.h>
 
 #include "ardour_dialog.h"
+#include "region_selection.h"
 
 namespace ARDOUR {
        class Readable;
@@ -32,7 +52,7 @@ class RhythmFerret : public ArdourDialog {
 
        enum Action {
                SplitRegion,
-               DefineTempoMap,
+               SnapRegionsToGrid,
                ConformRegion
        };
 
@@ -65,6 +85,10 @@ class RhythmFerret : public ArdourDialog {
        Gtk::HScale peak_picker_threshold_scale;
        Gtk::Adjustment silence_threshold_adjustment;
        Gtk::HScale silence_threshold_scale;
+#ifdef HAVE_AUBIO4
+       Gtk::Adjustment minioi_adjustment;
+       Gtk::HScale minioi_scale;
+#endif
 
        /* generic stuff */
 
@@ -79,6 +103,10 @@ class RhythmFerret : public ArdourDialog {
 
        ARDOUR::AnalysisFeatureList current_results;
 
+       void clear_transients ();
+       /** Regions that we have added transient marks to */
+       RegionSelection regions_with_transients;
+
        AnalysisMode get_analysis_mode () const;
        Action get_action() const;
        void analysis_mode_changed ();