X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=libs%2Fardour%2Fardour%2Freturn.h;h=45bb5573b264c943bc490345573a4b82c174d666;hb=b72d37a45f77f43233cd883a0e78d38fef975786;hp=f663c109a505f355bafc44d187c64bd05aedde57;hpb=f6fdd8dcbf41f864e9f0cc32dabe81fe3533ddfe;p=ardour.git diff --git a/libs/ardour/ardour/return.h b/libs/ardour/ardour/return.h index f663c109a5..45bb5573b2 100644 --- a/libs/ardour/ardour/return.h +++ b/libs/ardour/ardour/return.h @@ -1,6 +1,6 @@ /* Copyright (C) 2009 Paul Davis - Author: Dave Robillard + Author: David Robillard 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 @@ -26,7 +26,6 @@ #include "pbd/stateful.h" #include "ardour/ardour.h" -#include "ardour/audioengine.h" #include "ardour/io_processor.h" namespace ARDOUR { @@ -34,16 +33,16 @@ namespace ARDOUR { class Amp; class PeakMeter; -class Return : public IOProcessor + +class LIBARDOUR_API Return : public IOProcessor { public: Return (Session&, bool internal = false); - Return (Session&, const XMLNode&, bool internal = false); virtual ~Return (); uint32_t bit_slot() const { return _bitslot; } - void run (BufferSet& bufs, sframes_t start_frame, sframes_t end_frame, nframes_t nframes, bool); + void run (BufferSet& bufs, framepos_t start_frame, framepos_t end_frame, pframes_t nframes, bool); boost::shared_ptr amp() const { return _amp; } boost::shared_ptr meter() const { return _meter; } @@ -57,11 +56,11 @@ public: uint32_t pans_required() const { return _configured_input.n_audio(); } - bool can_support_io_configuration (const ChanCount& in, ChanCount& out) const; + bool can_support_io_configuration (const ChanCount& in, ChanCount& out); bool configure_io (ChanCount in, ChanCount out); static uint32_t how_many_returns(); - static void make_unique (XMLNode &, Session &); + static std::string name_and_id_new_return (Session&, uint32_t&); protected: bool _metering; @@ -72,10 +71,9 @@ private: /* disallow copy construction */ Return (const Return&); - uint32_t _bitslot; + uint32_t _bitslot; - void collect_input (BufferSet& bufs, nframes_t nframes, ChanCount offset=ChanCount::ZERO); - void just_meter_input (sframes_t start_frame, sframes_t end_frame, nframes_t nframes); + void collect_input (BufferSet& bufs, pframes_t nframes, ChanCount offset = ChanCount::ZERO); }; } // namespace ARDOUR