28 #include "ardour/debug.h"
75 :
Delivery (s, p, mm, name_and_id_new_send (s, r, _bitslot, ignore_bitslot), r)
180 _amp->setup_gain_automation (start_frame, end_frame, nframes);
181 _amp->run (sendbufs, start_frame, end_frame, nframes,
true);
183 _delayline->run (sendbufs, start_frame, end_frame, nframes,
true);
187 Delivery::run (sendbufs, start_frame, end_frame, nframes,
true);
192 if (
_amp->gain_control()->get_value() == 0) {
215 snprintf (buf,
sizeof (buf),
"%" PRIu32,
_bitslot);
229 if (version < 3000) {
237 if (node.
property (
"ignore-bitslot") == 0) {
243 if ((prop = node.
property (
"bitslot")) == 0) {
270 if ((*i)->name() ==
X_(
"Processor")) {
271 _amp->set_state (**i, version);
284 XMLNodeList::const_iterator i = children.begin();
285 while (i != children.end() && (*i)->name() !=
X_(
"Redirect")) {
289 if (i == children.end()) {
293 XMLNodeList const & grand_children = (*i)->children ();
294 XMLNodeList::const_iterator j = grand_children.begin ();
295 while (j != grand_children.end() && (*j)->name() !=
X_(
"IO")) {
299 if (j == grand_children.end()) {
328 if (!
_amp->configure_io (in, out)) {
341 cerr <<
"send delayline config failed\n";
367 string::size_type last_letter = new_name.find_last_not_of (
"0123456789");
369 if (last_letter != string::npos) {
370 unique_name = new_name.substr (0, last_letter + 1);
372 unique_name = new_name;
375 snprintf (buf,
sizeof (buf),
"%u", (
_bitslot + 1));
379 unique_name = new_name;
401 return _amp->value_as_string (ac);
int set_state(const XMLNode &, int version)
XMLNodeList::iterator XMLNodeIterator
ARDOUR::Session & _session
LIBPBD_API Transmitter fatal
bool display_to_user() const
void set_delay_out(framecnt_t)
void run(BufferSet &bufs, framepos_t start_frame, framepos_t end_frame, pframes_t nframes, bool)
void unmark_aux_send_id(uint32_t)
const std::string & value() const
XMLNode & state(bool full)
boost::shared_ptr< PeakMeter > _meter
XMLNode & state(bool full)
int set_state(const XMLNode &, int version)
void run(BufferSet &bufs, framepos_t start_frame, framepos_t end_frame, pframes_t nframes, bool)
const XMLNodeList & children(const std::string &str=std::string()) const
std::ostream & endmsg(std::ostream &ostr)
void read_from(const BufferSet &in, framecnt_t nframes)
boost::shared_ptr< IO > _output
virtual void add_control(boost::shared_ptr< Evoral::Control >)
std::list< XMLNode * > XMLNodeList
void unmark_send_id(uint32_t)
virtual void deactivate()
bool configure_io(ChanCount in, ChanCount out)
virtual uint32_t pan_outs() const
static std::string name_and_id_new_send(Session &, Delivery::Role r, uint32_t &, bool)
XMLProperty * property(const char *)
uint32_t next_aux_send_id()
gain_t * send_gain_automation_buffer() const
bool set_name(const std::string &str)
virtual bool configure_io(ChanCount in, ChanCount out)
void mark_send_id(uint32_t)
boost::shared_ptr< Amp > _amp
#define DEBUG_TRACE(bits, str)
bool set_name(const std::string &name)
boost::shared_ptr< DelayLine > _delayline
XMLProperty * add_property(const char *name, const std::string &value)
void set_delay_in(framecnt_t)
void add_child_nocopy(XMLNode &)
Send(Session &, boost::shared_ptr< Pannable > pannable, boost::shared_ptr< MuteMaster >, Delivery::Role r=Delivery::Send, bool ignore_bitslot=false)
BufferSet * _output_buffers
int set_state_2X(XMLNode const &, int)
const ChanCount & count() const
LIBARDOUR_API uint64_t LatencyCompensation
std::string value_as_string(boost::shared_ptr< AutomationControl >) const
static const ChanCount ZERO
boost::shared_ptr< PannerShell > panner_shell() const
BufferSet & get_mix_buffers(ChanCount count=ChanCount::ZERO)
std::string string_compose(const std::string &fmt, const T1 &o1)
void mark_aux_send_id(uint32_t)
bool can_support_io_configuration(const ChanCount &in, ChanCount &out)