Add operator<< for bundles.
[ardour.git] / gtk2_ardour / port_group.h
index f8955337a2596208c1f8b7780c188f55e2d5b24a..f0bb1c4c58ef0c57f62393042a43297555992009 100644 (file)
@@ -40,7 +40,6 @@ namespace ARDOUR {
 }
 
 class PortMatrix;
-class RouteBundle;
 class PublicEditor;
 
 /** A list of bundles grouped by some aspect of their type e.g. busses, tracks, system.
@@ -76,7 +75,7 @@ public:
            boost::shared_ptr<ARDOUR::Bundle> bundle;
            /** IO whose ports are in the bundle, or 0.  This is so that we can do things like adding
                ports to the IO from matrix editor menus. */
-           boost::shared_ptr<ARDOUR::IO> io; 
+           boost::weak_ptr<ARDOUR::IO> io; 
            Gdk::Color colour;
            bool has_colour;
            PBD::ScopedConnection changed_connection;
@@ -145,8 +144,9 @@ class PortGroupList : public sigc::trackable
        void emit_bundle_changed (ARDOUR::Bundle::Change);
        boost::shared_ptr<ARDOUR::Bundle> make_bundle_from_ports (std::vector<std::string> const &, ARDOUR::DataType, bool) const;
        void maybe_add_processor_to_list (
-               boost::weak_ptr<ARDOUR::Processor>, std::list<boost::shared_ptr<ARDOUR::Bundle> > *, bool, std::set<boost::shared_ptr<ARDOUR::IO> > &
+               boost::weak_ptr<ARDOUR::Processor>, std::list<boost::shared_ptr<ARDOUR::IO> > *, bool, std::set<boost::shared_ptr<ARDOUR::IO> > &
                );
+       boost::shared_ptr<ARDOUR::Bundle> bundle_for_type (boost::shared_ptr<ARDOUR::Bundle>, ARDOUR::DataType) const;
 
        mutable PortGroup::BundleList _bundles;
        List _groups;