Add operator<< for bundles.
[ardour.git] / gtk2_ardour / region_view.h
index 60de56d76f329832ecaeebc3cb389b74e2773c54..a96862f08a304ad543942b2933cdbf961b8f72a1 100644 (file)
@@ -38,6 +38,10 @@ class GhostRegion;
 class AutomationTimeAxisView;
 class AutomationRegionView;
 
+namespace Gnome { namespace Canvas {
+       class NoEventText;
+} }
+
 class RegionView : public TimeAxisViewItem
 {
   public:
@@ -96,18 +100,22 @@ class RegionView : public TimeAxisViewItem
                return _time_converter;
        }
 
-       /** Called when a start trim is about to begin */
-       virtual void trim_start_starting () {}
+       /** Called when a front trim is about to begin */
+       virtual void trim_front_starting () {}
 
-       void trim_start (framepos_t, bool);
+       void trim_front (framepos_t, bool);
 
        /** Called when a start trim has finished */
-       virtual void trim_start_ending () {}
+       virtual void trim_front_ending () {}
        
        void trim_end (framepos_t, bool);
        void trim_contents (framepos_t, bool, bool);
        virtual void thaw_after_trim ();
 
+        void set_silent_frames (const ARDOUR::AudioIntervalResult&, double threshold);
+        void drop_silent_frames ();
+        void hide_silent_frames ();
+
   protected:
 
        /** Allows derived types to specify their visibility requirements
@@ -164,6 +172,16 @@ class RegionView : public TimeAxisViewItem
        */
        std::list<ArdourCanvas::SimpleRect*> _coverage_frames;
 
+       /** a list of rectangles used to show silent segments 
+       */
+       std::list<ArdourCanvas::SimpleRect*> _silent_frames;
+       /** a list of rectangles used to show the current silence threshold
+       */
+       std::list<ArdourCanvas::SimpleRect*> _silent_threshold_frames;
+        /** a text item to display strip silence statistics
+         */
+        ArdourCanvas::NoEventText* _silence_text;
+        
        ARDOUR::BeatsFramesConverter _time_converter;
 };