General SMPTE fixes mostly relating to non-integer frame rates. Please Test. Fix...
[ardour.git] / gtk2_ardour / audio_streamview.h
index 8d5ab4117c88c3b5d22884fb040d827201b9e866..295e02d96a11384d5c9082e3883898a0c05456a3 100644 (file)
@@ -23,6 +23,8 @@
 #include <map>
 #include <cmath>
 
+#include <boost/weak_ptr.hpp>
+
 #include <ardour/location.h>
 #include "enums.h"
 #include "simplerect.h"
@@ -57,6 +59,9 @@ class AudioStreamView : public StreamView
        ~AudioStreamView ();
 
        void set_waveform_shape (WaveformShape);
+       WaveformShape get_waveform_shape () const { return _waveform_shape; }
+       void set_waveform_scale (WaveformScale);
+       WaveformScale get_waveform_scale () const { return _waveform_scale; }
 
        int set_height (gdouble h);
        int set_samples_per_unit (gdouble spp);
@@ -76,13 +81,12 @@ class AudioStreamView : public StreamView
 
   private:
        void setup_rec_box ();
-       void rec_peak_range_ready (jack_nframes_t start, jack_nframes_t cnt, ARDOUR::Source* src); 
+       void rec_peak_range_ready (nframes_t start, nframes_t cnt, boost::weak_ptr<ARDOUR::Source> src); 
        void update_rec_regions ();
        
        void add_region_view_internal (boost::shared_ptr<ARDOUR::Region>, bool wait_for_waves);
-       void remove_region_view (boost::shared_ptr<ARDOUR::Region> );
+       void remove_region_view (boost::weak_ptr<ARDOUR::Region> );
        void remove_audio_region_view (boost::shared_ptr<ARDOUR::AudioRegion> );
-       void remove_audio_rec_region (boost::shared_ptr<ARDOUR::AudioRegion>);
 
        void undisplay_diskstream ();
        void redisplay_diskstream ();
@@ -102,9 +106,11 @@ class AudioStreamView : public StreamView
        bool              crossfades_visible;
 
        list<sigc::connection>     peak_ready_connections;
-       jack_nframes_t             last_rec_peak_frame;
-       map<ARDOUR::Source*, bool> rec_peak_ready_map;
-       
+       nframes_t             last_rec_peak_frame;
+       map<boost::shared_ptr<ARDOUR::Source>, bool> rec_peak_ready_map;
+
+       WaveformShape     _waveform_shape;
+       WaveformScale     _waveform_scale;
 };
 
 #endif /* __ardour_audio_streamview_h__ */