summaryrefslogtreecommitdiff
path: root/libs/ardour/ardour/route_group.h
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2010-04-03 13:40:34 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2010-04-03 13:40:34 +0000
commit3104041e67b0f7c476c7478ce4b7a4af3d277da7 (patch)
treed9bfaafe7983caca4f3292d5f9835e5bbd0d38b8 /libs/ardour/ardour/route_group.h
parentd166d0584f611d5e1ff85a5008e87c9e21e04952 (diff)
meter point restore handling, and related matters
git-svn-id: svn://localhost/ardour2/branches/3.0@6854 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/ardour/route_group.h')
-rw-r--r--libs/ardour/ardour/route_group.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/libs/ardour/ardour/route_group.h b/libs/ardour/ardour/route_group.h
index c7616a746e..7dbdc1d882 100644
--- a/libs/ardour/ardour/route_group.h
+++ b/libs/ardour/ardour/route_group.h
@@ -98,12 +98,24 @@ class RouteGroup : public SessionObject
}
}
+ void apply (void (Route::*func)()) {
+ for (RouteList::iterator i = routes->begin(); i != routes->end(); ++i) {
+ ((*i).get()->*func)();
+ }
+ }
+
template<class T> void apply (void (Route::*func)(T, void *), T val, void *src) {
for (RouteList::iterator i = routes->begin(); i != routes->end(); ++i) {
((*i).get()->*func)(val, src);
}
}
+ template<class T> void apply (void (Route::*func)(T), T val) {
+ for (RouteList::iterator i = routes->begin(); i != routes->end(); ++i) {
+ ((*i).get()->*func)(val);
+ }
+ }
+
template<class T> void foreach_route (T *obj, void (T::*func)(Route&)) {
for (RouteList::iterator i = routes->begin(); i != routes->end(); ++i) {
(obj->*func)(**i);