diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2009-01-30 07:40:13 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2009-01-30 07:40:13 +0000 |
commit | 70b939da4f9d4097160e32f2373a7a5ff8f4957f (patch) | |
tree | 5917e5847c75e441c9df550d5101352d18e8286f /libs/ardour/session.cc | |
parent | ee62ee07d39f51ba1b70f390dc2158c57f54a572 (diff) |
first pass at internal sends. this is a very tentative work in progress, and it is possible that major changes may follow in the near future. it is certainly not complete, but the fundamental changes to Port/Buffer operation merit a commit at this point
git-svn-id: svn://localhost/ardour2/branches/3.0@4464 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/session.cc')
-rw-r--r-- | libs/ardour/session.cc | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/libs/ardour/session.cc b/libs/ardour/session.cc index 59b873e87f..6e7fe3a0f6 100644 --- a/libs/ardour/session.cc +++ b/libs/ardour/session.cc @@ -72,6 +72,7 @@ #include <ardour/named_selection.h> #include <ardour/crossfade.h> #include <ardour/playlist.h> +#include <ardour/internal_send.h> #include <ardour/click.h> #include <ardour/data_type.h> #include <ardour/buffer_set.h> @@ -1822,7 +1823,7 @@ Session::set_remote_control_ids () } -Session::RouteList +RouteList Session::new_audio_route (int input_channels, int output_channels, uint32_t how_many) { char bus_name[32]; @@ -3685,6 +3686,8 @@ Session::add_processor (Processor* processor) _plugin_inserts.insert (_plugin_inserts.begin(), plugin_insert); } else if ((send = dynamic_cast<Send *> (processor)) != 0) { _sends.insert (_sends.begin(), send); + } else if (dynamic_cast<InternalSend *> (processor) != 0) { + /* relax */ } else { fatal << _("programming error: unknown type of Insert created!") << endmsg; /*NOTREACHED*/ @@ -3710,6 +3713,8 @@ Session::remove_processor (Processor* processor) } } else if ((plugin_insert = dynamic_cast<PluginInsert *> (processor)) != 0) { _plugin_inserts.remove (plugin_insert); + } else if (dynamic_cast<InternalSend *> (processor) != 0) { + /* relax */ } else if ((send = dynamic_cast<Send *> (processor)) != 0) { list<Send*>::iterator x = find (_sends.begin(), _sends.end(), send); if (x != _sends.end()) { |