void set_comment (std::string str, void *src);
bool set_name (const std::string& str);
+ static void set_name_in_state (XMLNode &, const std::string &);
int32_t order_key (std::string const &) const;
void set_order_key (std::string const &, int32_t);
bool is_master() const { return _flags & MasterOut; }
bool is_monitor() const { return _flags & MonitorOut; }
+ virtual MonitorState monitoring_state () const;
+ virtual MeterState metering_state () const;
+
/* these are the core of the API of a Route. see the protected sections as well */
virtual int roll (pframes_t nframes, framepos_t start_frame, framepos_t end_frame,
virtual int silent_roll (pframes_t nframes, framepos_t start_frame, framepos_t end_frame,
bool& need_butler);
- virtual void toggle_monitor_input ();
virtual bool can_record() { return false; }
virtual void set_record_enabled (bool /*yn*/, void * /*src*/) {}
bool muted () const;
void set_mute (bool yn, void* src);
-
+
/* controls use set_solo() to modify this route's solo state
*/
}
}
+ boost::shared_ptr<Processor> processor_by_id (PBD::ID) const;
+
boost::shared_ptr<Processor> nth_plugin (uint32_t n);
boost::shared_ptr<Processor> nth_send (uint32_t n);
/* stateful */
XMLNode& get_state();
- int set_state (const XMLNode&, int version);
+ virtual int set_state (const XMLNode&, int version);
virtual XMLNode& get_template();
XMLNode& get_processor_state ();
virtual void process_output_buffers (BufferSet& bufs,
framepos_t start_frame, framepos_t end_frame,
- pframes_t nframes, bool with_processors, int declick,
+ pframes_t nframes, int declick,
bool gain_automation_ok);
boost::shared_ptr<IO> _input;
boost::shared_ptr<MuteControllable> _mute_control;
boost::shared_ptr<MuteMaster> _mute_master;
+ virtual void act_on_mute () {}
+
std::string _comment;
bool _have_internal_generator;
bool _solo_safe;
uint32_t pans_required() const;
ChanCount n_process_buffers ();
- virtual bool should_monitor () const;
virtual void maybe_declick (BufferSet&, framecnt_t, int);
- virtual int _set_state (const XMLNode&, int);
-
boost::shared_ptr<Amp> _amp;
boost::shared_ptr<PeakMeter> _meter;
private:
- int _set_state_2X (const XMLNode&, int);
+ int set_state_2X (const XMLNode&, int);
void set_processor_state_2X (XMLNodeList const &, int);
static uint32_t order_key_cnt;