diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2009-06-25 20:46:39 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2009-06-25 20:46:39 +0000 |
commit | 8e7a5d77414a40550a28d61abf6eeb1e89a1ec25 (patch) | |
tree | 76d5851fe7221066ccadbc032a9a1fbcd1b6091b /libs/ardour/ardour | |
parent | 94880f7cd1417031387b485e279c32eea885cf6d (diff) |
startup assistant patch from tinman; cleanup fix backported from 2.X ; easy(ier) ways to create aux sends ; facility to subgroup (route via bus) for a route group ; fix up internal send/return operation ; fix internal send naming since it doesn't need to be unique - no JACK ports involved
git-svn-id: svn://localhost/ardour2/branches/3.0@5272 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/ardour')
-rw-r--r-- | libs/ardour/ardour/file_source.h | 7 | ||||
-rw-r--r-- | libs/ardour/ardour/internal_return.h | 4 | ||||
-rw-r--r-- | libs/ardour/ardour/internal_send.h | 2 | ||||
-rw-r--r-- | libs/ardour/ardour/route.h | 1 | ||||
-rw-r--r-- | libs/ardour/ardour/route_group.h | 4 | ||||
-rw-r--r-- | libs/ardour/ardour/session.h | 3 |
6 files changed, 17 insertions, 4 deletions
diff --git a/libs/ardour/ardour/file_source.h b/libs/ardour/ardour/file_source.h index d5a4ce1d95..fdf7473c63 100644 --- a/libs/ardour/ardour/file_source.h +++ b/libs/ardour/ardour/file_source.h @@ -52,6 +52,10 @@ public: static void set_search_path (DataType type, const Glib::ustring& path); + static bool find (DataType type, const Glib::ustring& path, + bool must_exist, bool& is_new, uint16_t& chan, + Glib::ustring& found_path); + protected: FileSource (Session& session, DataType type, const Glib::ustring& path, bool embedded, @@ -63,9 +67,6 @@ protected: virtual int move_dependents_to_trash() { return 0; } - bool find (DataType type, const Glib::ustring& path, - bool must_exist, bool& is_new, uint16_t& chan); - bool removable () const; Glib::ustring _path; diff --git a/libs/ardour/ardour/internal_return.h b/libs/ardour/ardour/internal_return.h index 6aa8bfe7b4..a23b17adf8 100644 --- a/libs/ardour/ardour/internal_return.h +++ b/libs/ardour/ardour/internal_return.h @@ -34,6 +34,8 @@ class InternalReturn : public Return InternalReturn (Session&); InternalReturn (Session&, const XMLNode&); + bool visible() const { return false; } + XMLNode& state(bool full); XMLNode& get_state(void); int set_state(const XMLNode& node); @@ -50,7 +52,7 @@ class InternalReturn : public Return private: BufferSet buffers; - uint32_t user_count; + gint user_count; /* atomic */ void allocate_buffers (nframes_t); void cycle_start (nframes_t); }; diff --git a/libs/ardour/ardour/internal_send.h b/libs/ardour/ardour/internal_send.h index 0bbb75d685..3172176897 100644 --- a/libs/ardour/ardour/internal_send.h +++ b/libs/ardour/ardour/internal_send.h @@ -32,6 +32,8 @@ class InternalSend : public Send InternalSend (Session&, boost::shared_ptr<MuteMaster>, const XMLNode&); virtual ~InternalSend (); + bool set_name (const std::string&); + XMLNode& state(bool full); XMLNode& get_state(void); int set_state(const XMLNode& node); diff --git a/libs/ardour/ardour/route.h b/libs/ardour/ardour/route.h index dcdd306c5b..d346a22342 100644 --- a/libs/ardour/ardour/route.h +++ b/libs/ardour/ardour/route.h @@ -191,6 +191,7 @@ class Route : public SessionObject, public AutomatableControls boost::shared_ptr<Delivery> main_outs() const { return _main_outs; } boost::shared_ptr<InternalReturn> internal_return() const { return _intreturn; } boost::shared_ptr<Send> internal_send_for (boost::shared_ptr<const Route> target) const; + void add_internal_return (); BufferSet* get_return_buffer () const; void release_return_buffer () const; void put_control_outs_at (Placement); diff --git a/libs/ardour/ardour/route_group.h b/libs/ardour/ardour/route_group.h index f4ed001453..a038551244 100644 --- a/libs/ardour/ardour/route_group.h +++ b/libs/ardour/ardour/route_group.h @@ -121,6 +121,9 @@ public: routes.clear (); changed(); } + + void make_subgroup (); + void destroy_subgroup (); const std::list<Route*>& route_list() { return routes; } @@ -134,6 +137,7 @@ public: private: Session& _session; std::list<Route *> routes; + boost::shared_ptr<Route> subgroup_bus; std::string _name; Flag _flags; Property _properties; diff --git a/libs/ardour/ardour/session.h b/libs/ardour/ardour/session.h index 1dd40affdb..39822de678 100644 --- a/libs/ardour/ardour/session.h +++ b/libs/ardour/ardour/session.h @@ -738,6 +738,9 @@ class Session : public PBD::StatefulDestructible, public boost::noncopyable boost::shared_ptr<Route> control_out() const { return _control_out; } boost::shared_ptr<Route> master_out() const { return _master_out; } + void globally_add_internal_sends (boost::shared_ptr<Route> dest); + void add_internal_sends (boost::shared_ptr<Route> dest, boost::shared_ptr<RouteList> senders); + static void set_disable_all_loaded_plugins (bool yn) { _disable_all_loaded_plugins = yn; } |