diff options
author | Sakari Bergen <sakari.bergen@beatwaves.net> | 2009-03-08 10:56:40 +0000 |
---|---|---|
committer | Sakari Bergen <sakari.bergen@beatwaves.net> | 2009-03-08 10:56:40 +0000 |
commit | ab47be7b5a99e34b7f125b16556d2295e480553b (patch) | |
tree | 7a82263b8364f95dcc3a745d5534d68ad1dd8aff /gtk2_ardour/export_channel_selector.h | |
parent | b669de1e9706148d1a1386050c9f14e620e69fba (diff) |
Some preparations for allowing multiple channel configurations in export channel configurations.
Also unified the timespan selector interface...
git-svn-id: svn://localhost/ardour2/branches/3.0@4748 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/export_channel_selector.h')
-rw-r--r-- | gtk2_ardour/export_channel_selector.h | 26 |
1 files changed, 18 insertions, 8 deletions
diff --git a/gtk2_ardour/export_channel_selector.h b/gtk2_ardour/export_channel_selector.h index 9f1217c53d..14b614d5a9 100644 --- a/gtk2_ardour/export_channel_selector.h +++ b/gtk2_ardour/export_channel_selector.h @@ -47,12 +47,21 @@ class ExportChannelSelector : public Gtk::HBox { protected: typedef boost::shared_ptr<ARDOUR::ExportChannelConfiguration> ChannelConfigPtr; - typedef boost::shared_ptr<ARDOUR::ExportHandler> HandlerPtr; + typedef boost::shared_ptr<ARDOUR::ExportProfileManager> ProfileManagerPtr; + + ARDOUR::Session * session; + ProfileManagerPtr manager; public: + ExportChannelSelector (ARDOUR::Session * session, ProfileManagerPtr manager) + : session (session) + , manager (manager) + {} + virtual ~ExportChannelSelector () {} - virtual void set_state (ARDOUR::ExportProfileManager::ChannelConfigStatePtr const state_, ARDOUR::Session * session_) = 0; + virtual void sync_with_manager () = 0; + sigc::signal<void> CriticalSelectionChanged; }; @@ -61,10 +70,10 @@ class PortExportChannelSelector : public ExportChannelSelector public: - PortExportChannelSelector (); + PortExportChannelSelector (ARDOUR::Session * session, ProfileManagerPtr manager); ~PortExportChannelSelector (); - void set_state (ARDOUR::ExportProfileManager::ChannelConfigStatePtr const state_, ARDOUR::Session * session_); + void sync_with_manager (); private: @@ -74,7 +83,6 @@ class PortExportChannelSelector : public ExportChannelSelector typedef std::list<ARDOUR::ExportChannelPtr> CahnnelList; - ARDOUR::Session * session; ARDOUR::ExportProfileManager::ChannelConfigStatePtr state; /*** GUI stuff ***/ @@ -189,15 +197,17 @@ class PortExportChannelSelector : public ExportChannelSelector class RegionExportChannelSelector : public ExportChannelSelector { public: - RegionExportChannelSelector (ARDOUR::AudioRegion const & region, ARDOUR::AudioTrack & track); + RegionExportChannelSelector (ARDOUR::Session * session, + ProfileManagerPtr manager, + ARDOUR::AudioRegion const & region, + ARDOUR::AudioTrack & track); - virtual void set_state (ARDOUR::ExportProfileManager::ChannelConfigStatePtr const state_, ARDOUR::Session * session_); + virtual void sync_with_manager (); private: void handle_selection (); - ARDOUR::Session * session; ARDOUR::ExportProfileManager::ChannelConfigStatePtr state; boost::shared_ptr<ARDOUR::RegionExportChannelFactory> factory; ARDOUR::AudioRegion const & region; |