diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2009-05-13 21:34:09 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2009-05-13 21:34:09 +0000 |
commit | 0569107ddc0d2a8df6ca0a2c8cc16ebe8f3dee99 (patch) | |
tree | 81b0a6ffb5cd967d3b205a11ad6d4f8726aa03d2 /libs/ardour/control_outputs.cc | |
parent | 7188ec39903e4cef049468c5a0583d9ec67a290d (diff) |
more work on the new all-Processor-all-The-Time redesign of Route - LOTS OF BREAKAGE STILL EXPECTED ; change all(?) methods that pass a start/end frame in to use sframes_t not nframes_t
git-svn-id: svn://localhost/ardour2/branches/3.0@5074 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/control_outputs.cc')
-rw-r--r-- | libs/ardour/control_outputs.cc | 55 |
1 files changed, 7 insertions, 48 deletions
diff --git a/libs/ardour/control_outputs.cc b/libs/ardour/control_outputs.cc index 2acd3c6d9e..8efb75145c 100644 --- a/libs/ardour/control_outputs.cc +++ b/libs/ardour/control_outputs.cc @@ -16,64 +16,23 @@ 675 Mass Ave, Cambridge, MA 02139, USA. */ -#include <cmath> -#include <algorithm> #include "ardour/control_outputs.h" -#include "ardour/audio_buffer.h" -#include "ardour/buffer_set.h" -#include "ardour/configuration.h" -#include "ardour/io.h" -#include "ardour/session.h" using namespace std; +using namespace ARDOUR; -namespace ARDOUR { +const std::string ControlOutputs::processor_type_name = "control-outputs"; -ControlOutputs::ControlOutputs(Session& s, IO* io) - : IOProcessor(s, io, "Control Outs") - , _deliver(true) +ControlOutputs::ControlOutputs(Session& s, IO* io, const std::string& name) + : Delivery (s, io, name) { } -bool -ControlOutputs::can_support_io_configuration (const ChanCount& in, ChanCount& out) const -{ - out = in; - return true; -} - -bool -ControlOutputs::configure_io (ChanCount in, ChanCount out) -{ - if (out != in) { // always 1:1 - return false; - } - - return Processor::configure_io (in, out); -} - -void -ControlOutputs::run_in_place (BufferSet& bufs, nframes_t start_frame, nframes_t end_frame, nframes_t nframes) -{ - if (_deliver) { - _io->deliver_output (bufs, start_frame, end_frame, nframes); - } else { - _io->silence (nframes); - } -} - -XMLNode& -ControlOutputs::state (bool full_state) -{ - return get_state(); -} - XMLNode& ControlOutputs::get_state() { - XMLNode* node = new XMLNode(state_node_name); - node->add_property("type", "control-outputs"); - return *node; + XMLNode& node (Delivery::get_state()); + node.add_property ("type", processor_type_name); + return node; } -} // namespace ARDOUR |