mirror of
https://github.com/Ardour/ardour.git
synced 2026-01-03 04:09:29 +01:00
Show I/O Plugins on Recorder Page
This commit is contained in:
parent
5c85695362
commit
c10c3ed64f
2 changed files with 175 additions and 24 deletions
|
|
@ -51,6 +51,7 @@
|
|||
|
||||
namespace ARDOUR {
|
||||
class SoloMuteRelease;
|
||||
class IOPlug;
|
||||
}
|
||||
|
||||
class TrackRecordAxis;
|
||||
|
|
@ -87,6 +88,10 @@ private:
|
|||
void stop_updating ();
|
||||
bool update_meters ();
|
||||
void add_or_remove_io (ARDOUR::DataType, std::vector<std::string>, bool);
|
||||
void io_plugins_changed ();
|
||||
void io_plugin_add (boost::shared_ptr<ARDOUR::IOPlug>);
|
||||
void io_plugin_going_away (boost::weak_ptr<ARDOUR::IOPlug>);
|
||||
void post_add_remove (bool);
|
||||
void update_io_widget_labels ();
|
||||
|
||||
void initial_track_display ();
|
||||
|
|
@ -157,11 +162,6 @@ private:
|
|||
|
||||
std::set<std::string> _spill_port_names;
|
||||
|
||||
sigc::connection _fast_screen_update_connection;
|
||||
sigc::connection _ruler_width_update_connection;
|
||||
PBD::ScopedConnectionList _engine_connections;
|
||||
PBD::ScopedConnection _monitor_connection;
|
||||
|
||||
class RecRuler : public CairoWidget , public ARDOUR::SessionHandlePtr
|
||||
{
|
||||
public:
|
||||
|
|
@ -188,7 +188,7 @@ private:
|
|||
class InputPort : public Gtk::EventBox
|
||||
{
|
||||
public:
|
||||
InputPort (std::string const&, ARDOUR::DataType, RecorderUI*, bool vertical = false);
|
||||
InputPort (std::string const&, ARDOUR::DataType, RecorderUI*, bool vertical = false, bool ioplug = false);
|
||||
~InputPort ();
|
||||
|
||||
void set_frame_label (std::string const&);
|
||||
|
|
@ -201,6 +201,7 @@ private:
|
|||
void update_rec_stat ();
|
||||
|
||||
ARDOUR::DataType data_type () const;
|
||||
bool ioplug () const { return _ioplug; }
|
||||
std::string const& name () const;
|
||||
|
||||
void update (float, float); // FastMeter
|
||||
|
|
@ -210,6 +211,9 @@ private:
|
|||
void clear ();
|
||||
|
||||
bool operator< (InputPort const& o) const {
|
||||
if (_ioplug != o._ioplug) {
|
||||
return !_ioplug;
|
||||
}
|
||||
if (_dt == o._dt) {
|
||||
return PBD::naturally_less (_port_name.c_str (), o._port_name.c_str ());
|
||||
}
|
||||
|
|
@ -231,6 +235,7 @@ private:
|
|||
Gtk::Label _name_label;
|
||||
ArdourWidgets::ArdourButton _add_button;
|
||||
std::string _port_name;
|
||||
bool _ioplug;
|
||||
ARDOUR::WeakRouteList _connected_routes;
|
||||
ARDOUR::SoloMuteRelease* _solo_release;
|
||||
|
||||
|
|
@ -248,6 +253,7 @@ private:
|
|||
|
||||
typedef std::map<std::string, boost::shared_ptr<InputPort> > InputPortMap;
|
||||
typedef std::set<boost::shared_ptr<InputPort>, InputPortPtrSort> InputPortSet;
|
||||
typedef std::set<boost::shared_ptr<ARDOUR::IOPlug>> IOPlugSet;
|
||||
|
||||
RecRuler _ruler;
|
||||
Gtk::EventBox _space;
|
||||
|
|
@ -258,6 +264,13 @@ private:
|
|||
InputPortMap _input_ports;
|
||||
std::list<TrackRecordAxis*> _recorders;
|
||||
std::list<TrackRecordAxis*> _visible_recorders;
|
||||
IOPlugSet _ioplugins;
|
||||
|
||||
sigc::connection _fast_screen_update_connection;
|
||||
sigc::connection _ruler_width_update_connection;
|
||||
PBD::ScopedConnectionList _engine_connections;
|
||||
PBD::ScopedConnection _monitor_connection;
|
||||
PBD::ScopedConnectionList _going_away_connections;
|
||||
|
||||
public:
|
||||
/* only for RecorderGroupTab */
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue