#include <boost/weak_ptr.hpp>
#include <ardour/location.h>
-#include "enums.h"
+#include "editing.h"
#include "simplerect.h"
-#include "color.h"
#include "streamview.h"
namespace Gdk {
AudioStreamView (AudioTimeAxisView&);
~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; }
+ void set_waveform_shape (Editing::WaveformShape);
+ Editing::WaveformShape get_waveform_shape () const { return _waveform_shape; }
+ void set_waveform_scale (Editing::WaveformScale);
+ Editing::WaveformScale get_waveform_scale () const { return _waveform_scale; }
- int set_height (gdouble h);
int set_samples_per_unit (gdouble spp);
int set_amplitude_above_axis (gdouble app);
void foreach_crossfadeview (void (CrossfadeView::*pmf)(void));
+ void show_all_fades ();
+ void hide_all_fades ();
+
void show_all_xfades ();
void hide_all_xfades ();
void hide_xfades_involving (AudioRegionView&);
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);
+ RegionView* add_region_view_internal (boost::shared_ptr<ARDOUR::Region>, bool wait_for_waves, bool recording = false);
void remove_region_view (boost::weak_ptr<ARDOUR::Region> );
void remove_audio_region_view (boost::shared_ptr<ARDOUR::AudioRegion> );
void undisplay_diskstream ();
void redisplay_diskstream ();
- void playlist_modified ();
+ void playlist_modified_weak (boost::weak_ptr<ARDOUR::Diskstream>);
+ void playlist_modified (boost::shared_ptr<ARDOUR::Diskstream>);
void playlist_changed (boost::shared_ptr<ARDOUR::Diskstream>);
void add_crossfade (boost::shared_ptr<ARDOUR::Crossfade>);
- void remove_crossfade (boost::shared_ptr<ARDOUR::Crossfade>);
+ void add_crossfade_weak (boost::weak_ptr<ARDOUR::Crossfade>);
+ void remove_crossfade (boost::shared_ptr<ARDOUR::Region>);
+
+ void color_handler ();
- void color_handler (ColorID id, uint32_t val);
+ void update_contents_height ();
double _amplitude_above_axis;
CrossfadeViewList crossfade_views;
bool crossfades_visible;
- WaveformShape _waveform_shape;
- WaveformScale _waveform_scale;
+
+ std::list<sigc::connection> rec_data_ready_connections;
+ nframes_t last_rec_data_frame;
+ map<boost::shared_ptr<ARDOUR::Source>, bool> rec_data_ready_map;
+
+ bool outline_region;
+
+ Editing::WaveformShape _waveform_shape;
+ Editing::WaveformScale _waveform_scale;
};
#endif /* __ardour_audio_streamview_h__ */