summaryrefslogtreecommitdiff
path: root/libs/ardour/ardour
diff options
context:
space:
mode:
Diffstat (limited to 'libs/ardour/ardour')
-rw-r--r--libs/ardour/ardour/route.h4
-rw-r--r--libs/ardour/ardour/send.h6
2 files changed, 10 insertions, 0 deletions
diff --git a/libs/ardour/ardour/route.h b/libs/ardour/ardour/route.h
index c8f6005872..b8060f059d 100644
--- a/libs/ardour/ardour/route.h
+++ b/libs/ardour/ardour/route.h
@@ -836,6 +836,10 @@ class LIBARDOUR_API Route : public SessionObject, public Automatable, public Rou
void output_change_handler (IOChange, void *src);
void sidechain_change_handler (IOChange, void *src);
+ void processor_selfdestruct (boost::weak_ptr<Processor>);
+ std::vector<boost::weak_ptr<Processor> > selfdestruct_sequence;
+ Glib::Threads::Mutex selfdestruct_lock;
+
bool input_port_count_changing (ChanCount);
bool output_port_count_changing (ChanCount);
diff --git a/libs/ardour/ardour/send.h b/libs/ardour/ardour/send.h
index 3b0e8a4309..967957d854 100644
--- a/libs/ardour/ardour/send.h
+++ b/libs/ardour/ardour/send.h
@@ -55,6 +55,10 @@ class LIBARDOUR_API Send : public Delivery
XMLNode& get_state ();
int set_state(const XMLNode&, int version);
+ PBD::Signal0<void> SelfDestruct;
+ void set_remove_on_disconnect (bool b) { _remove_on_disconnect = b; }
+ bool remove_on_disconnect () const { return _remove_on_disconnect; }
+
uint32_t pans_required() const { return _configured_input.n_audio(); }
void run (BufferSet& bufs, framepos_t start_frame, framepos_t end_frame, pframes_t nframes, bool);
@@ -89,6 +93,7 @@ class LIBARDOUR_API Send : public Delivery
/* disallow copy construction */
Send (const Send&);
void panshell_changed ();
+ void snd_output_changed (IOChange, void*);
int set_state_2X (XMLNode const &, int);
@@ -96,6 +101,7 @@ class LIBARDOUR_API Send : public Delivery
framecnt_t _delay_in;
framecnt_t _delay_out;
+ bool _remove_on_disconnect;
};
} // namespace ARDOUR