/*
- Copyright (C) 2001, 2006 Paul Davis
+ Copyright (C) 2001, 2006 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
#include <boost/weak_ptr.hpp>
-#include <ardour/location.h>
+#include "ardour/location.h"
#include "editing.h"
#include "simplerect.h"
#include "streamview.h"
namespace ARDOUR {
class Route;
- class Diskstream;
class Crossfade;
class PeakData;
class AudioRegion;
AudioStreamView (AudioTimeAxisView&);
~AudioStreamView ();
- 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_samples_per_unit (gdouble spp);
+ void horizontal_position_changed ();
int set_amplitude_above_axis (gdouble app);
gdouble get_amplitude_above_axis () { return _amplitude_above_axis; }
void set_show_waveforms (bool yn);
- void set_show_waveforms_recording (bool yn) { use_rec_regions = yn; }
void foreach_crossfadeview (void (CrossfadeView::*pmf)(void));
void hide_xfades_involving (AudioRegionView&);
void reveal_xfades_involving (AudioRegionView&);
+ RegionView* create_region_view (boost::shared_ptr<ARDOUR::Region>, bool, bool);
+
private:
void setup_rec_box ();
- void rec_peak_range_ready (nframes_t start, nframes_t cnt, boost::weak_ptr<ARDOUR::Source> src);
- void update_rec_regions ();
-
+ void rec_peak_range_ready (framepos_t start, ARDOUR::framecnt_t cnt, boost::weak_ptr<ARDOUR::Source> src);
+ void update_rec_regions (ARDOUR::framepos_t, ARDOUR::framecnt_t);
+
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_weak (boost::weak_ptr<ARDOUR::Diskstream>);
- void playlist_modified (boost::shared_ptr<ARDOUR::Diskstream>);
- void playlist_changed_weak (boost::weak_ptr<ARDOUR::Diskstream>);
- void playlist_changed (boost::shared_ptr<ARDOUR::Diskstream>);
+ void undisplay_track ();
+ void redisplay_track ();
+ void playlist_layered (boost::weak_ptr<ARDOUR::Track>);
+ void playlist_switched (boost::weak_ptr<ARDOUR::Track>);
- void add_crossfade (boost::shared_ptr<ARDOUR::Crossfade>);
- void add_crossfade_weak (boost::weak_ptr<ARDOUR::Crossfade>);
+ void add_crossfade (boost::weak_ptr<ARDOUR::Crossfade>);
void remove_crossfade (boost::shared_ptr<ARDOUR::Region>);
void color_handler ();
void update_contents_height ();
-
+ void update_content_height (CrossfadeView *);
+
+ void parameter_changed (std::string const &);
+ void set_waveform_shape (ARDOUR::WaveformShape);
+ void set_waveform_scale (ARDOUR::WaveformScale);
+
double _amplitude_above_axis;
-
- typedef list<CrossfadeView*> CrossfadeViewList;
+
+ typedef std::map<boost::shared_ptr<ARDOUR::Crossfade>, CrossfadeView*> CrossfadeViewList;
CrossfadeViewList crossfade_views;
bool crossfades_visible;
-
- 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;
+ std::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__ */