class PhaseControl;
class MonitorControl;
-class LIBARDOUR_API Route : public GraphNode,
- public Stripable,
+class LIBARDOUR_API Route : public Stripable,
+ public GraphNode,
public Soloable,
public Muteable,
public Monitorable,
void ab_plugins (bool forward);
void clear_processors (Placement);
void all_visible_processors_active (bool);
+ void move_instrument_down (bool postfader = false);
bool strict_io () const { return _strict_io; }
bool set_strict_io (bool);
/** the processors have changed; the parameter indicates what changed */
PBD::Signal1<void,RouteProcessorChange> processors_changed;
+ PBD::Signal0<void> fan_out; // used to signal the GUI to fan-out (track-creation)
PBD::Signal1<void,void*> record_enable_changed;
+ PBD::Signal0<void> processor_latency_changed;
/** the metering point has changed */
PBD::Signal0<void> meter_change;
PBD::Signal0<void> signal_latency_changed;
/** Emitted with the process lock held */
PBD::Signal0<void> io_changed;
- /* gui's call this for their own purposes. */
-
- PBD::Signal2<void,std::string,void*> gui_changed;
-
/* stateful */
XMLNode& get_state();
XMLNode& get_processor_state ();
virtual void set_processor_state (const XMLNode&);
+ boost::weak_ptr<Route> weakroute ();
+
int save_as_template (const std::string& path, const std::string& name);
PBD::Signal1<void,void*> SelectedChanged;
return _mute_control;
}
- bool can_be_muted_by_others () const { return !is_master(); }
+ bool can_be_muted_by_others () const { return can_solo(); }
bool muted () const { return _mute_control->muted(); }
bool muted_by_masters () const { return _mute_control->muted_by_masters(); }
bool muted_by_self () const { return _mute_control->muted_by_self(); }
boost::shared_ptr<AutomationControl> comp_speed_controllable () const;
boost::shared_ptr<AutomationControl> comp_mode_controllable () const;
boost::shared_ptr<AutomationControl> comp_makeup_controllable () const;
- boost::shared_ptr<AutomationControl> comp_redux_controllable () const;
+ boost::shared_ptr<ReadOnlyControl> comp_redux_controllable () const;
/* @param mode must be supplied by the comp_mode_controllable(). All other values
* result in undefined behaviour
pframes_t nframes, int declick,
bool gain_automation_ok);
+ void flush_processor_buffers_locked (framecnt_t nframes);
+
virtual void bounce_process (BufferSet& bufs,
framepos_t start_frame, framecnt_t nframes,
boost::shared_ptr<Processor> endpoint, bool include_endpoint,