diff options
Diffstat (limited to 'gtk2_ardour/port_group.h')
-rw-r--r-- | gtk2_ardour/port_group.h | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/gtk2_ardour/port_group.h b/gtk2_ardour/port_group.h index 17e9842f93..d6008b61ba 100644 --- a/gtk2_ardour/port_group.h +++ b/gtk2_ardour/port_group.h @@ -50,12 +50,17 @@ public: : name (n), _visible (v) {} void add_bundle (boost::shared_ptr<ARDOUR::Bundle>); + boost::shared_ptr<ARDOUR::Bundle> only_bundle (); void add_port (std::string const &); void clear (); std::string name; ///< name for the group - ARDOUR::BundleList bundles; std::vector<std::string> ports; + + ARDOUR::BundleList const & bundles () const { + return _bundles; + } + bool visible () const { return _visible; } @@ -70,6 +75,7 @@ public: sigc::signal<void> VisibilityChanged; private: + ARDOUR::BundleList _bundles; bool _visible; ///< true if the group is visible in the UI }; @@ -101,7 +107,7 @@ class PortGroupList : public std::list<PortGroup*>, public sigc::trackable void gather (ARDOUR::Session &); void set_type (ARDOUR::DataType); void set_offer_inputs (bool); - ARDOUR::BundleList bundles () const; + ARDOUR::BundleList const & bundles () const; void take_visibility_from (PortGroupList const &); void clear_list (); @@ -111,9 +117,12 @@ class PortGroupList : public std::list<PortGroup*>, public sigc::trackable bool port_has_prefix (std::string const &, std::string const &) const; std::string common_prefix (std::vector<std::string> const &) const; void visibility_changed (); + void update_bundles () const; ARDOUR::DataType _type; bool _offer_inputs; + mutable ARDOUR::BundleList _bundles; + mutable bool _bundles_dirty; PortGroup _buss; PortGroup _track; |