summaryrefslogtreecommitdiff
path: root/libs/pbd/pbd/controllable.h
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2007-04-11 13:07:51 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2007-04-11 13:07:51 +0000
commit45d3ec1437cf661533bc7750c623865def4424df (patch)
tree80cdeb58bc51a22042b91c50334bdd8ee37deed6 /libs/pbd/pbd/controllable.h
parent4bf712f501e21cbf1e555bf010553aaca55edd39 (diff)
merged with 1697 revision of trunk (which is post-rc1 but pre-rc2
git-svn-id: svn://localhost/ardour2/branches/2.1-staging@1698 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/pbd/pbd/controllable.h')
-rw-r--r--libs/pbd/pbd/controllable.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/libs/pbd/pbd/controllable.h b/libs/pbd/pbd/controllable.h
index c88eb298bc..c152013c66 100644
--- a/libs/pbd/pbd/controllable.h
+++ b/libs/pbd/pbd/controllable.h
@@ -2,6 +2,7 @@
#define __pbd_controllable_h__
#include <string>
+#include <set>
#include <sigc++/trackable.h>
#include <sigc++/signal.h>
@@ -36,8 +37,18 @@ class Controllable : public PBD::StatefulDestructible {
std::string name() const { return _name; }
+ static Controllable* by_id (const PBD::ID&);
+ static Controllable* by_name (const std::string&);
+
private:
std::string _name;
+
+ void add ();
+ void remove ();
+
+ typedef std::set<PBD::Controllable*> Controllables;
+ static Glib::Mutex* registry_lock;
+ static Controllables registry;
};
}