-
- virtual ChanCount output_streams() const { return _io->n_outputs(); }
- virtual ChanCount input_streams () const { return _io->n_inputs(); }
- virtual ChanCount natural_output_streams() const { return _io->n_outputs(); }
- virtual ChanCount natural_input_streams () const { return _io->n_inputs(); }
-
- boost::shared_ptr<IO> io() { return _io; }
- boost::shared_ptr<const IO> io() const { return _io; }
-
- virtual void automation_snapshot (nframes_t now) { _io->automation_snapshot(now); }
-
- virtual void run (BufferSet& bufs, nframes_t start_frame, nframes_t end_frame, nframes_t nframes, nframes_t offset) = 0;
- void silence (nframes_t nframes, nframes_t offset);
-
- sigc::signal<void,IOProcessor*,bool> AutomationPlaybackChanged;
- sigc::signal<void,IOProcessor*,uint32_t> AutomationChanged;
-
+
+ bool set_name (const std::string& str);
+
+ bool does_routing() const { return true; }
+
+ virtual ChanCount natural_output_streams() const;
+ virtual ChanCount natural_input_streams () const;
+
+ boost::shared_ptr<IO> input() { return _input; }
+ boost::shared_ptr<const IO> input() const { return _input; }
+ boost::shared_ptr<IO> output() { return _output; }
+ boost::shared_ptr<const IO> output() const { return _output; }
+ void set_input (boost::shared_ptr<IO>);
+ void set_output (boost::shared_ptr<IO>);
+
+ void silence (framecnt_t nframes, framepos_t start_frame);
+ void disconnect ();
+
+ void increment_port_buffer_offset (pframes_t);
+
+ virtual bool feeds (boost::shared_ptr<Route> other) const;
+
+ PBD::Signal2<void,IOProcessor*,bool> AutomationPlaybackChanged;
+ PBD::Signal2<void,IOProcessor*,uint32_t> AutomationChanged;
+