diff options
author | David Robillard <d@drobilla.net> | 2009-05-09 23:59:01 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2009-05-09 23:59:01 +0000 |
commit | 5465c4af1c7b18cba31fa3d15ab1741f2613e9d4 (patch) | |
tree | a7331689f196cef1e979afa313ba60122fa64a97 /src/Patchage.hpp | |
parent | 43e673a183844709ecd41e08d97f96d9228a544c (diff) | |
download | patchage-5465c4af1c7b18cba31fa3d15ab1741f2613e9d4.tar.gz patchage-5465c4af1c7b18cba31fa3d15ab1741f2613e9d4.tar.bz2 patchage-5465c4af1c7b18cba31fa3d15ab1741f2613e9d4.zip |
Dramatically reduce resize overhead everywhere.
Make alsa driver create individual ports and do minimal work vs naive full refresh when anything changes.
Fixes ticket #355.
git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@1967 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/Patchage.hpp')
-rw-r--r-- | src/Patchage.hpp | 21 |
1 files changed, 14 insertions, 7 deletions
diff --git a/src/Patchage.hpp b/src/Patchage.hpp index 9aeedd0..a7b970f 100644 --- a/src/Patchage.hpp +++ b/src/Patchage.hpp @@ -19,21 +19,24 @@ #define PATCHAGE_PATCHAGE_HPP #include <string> +#include <set> #include <boost/shared_ptr.hpp> #include <libgnomecanvasmm.h> #include <libglademm/xml.h> #include "patchage-config.h" #include "Widget.hpp" -class PatchageCanvas; -class JackDriver; class AlsaDriver; -class LashProxy; -class StateManager; -class JackSettingsDialog; -class Session; class DBus; +class JackDriver; +class JackSettingsDialog; +class LashProxy; +class PatchageCanvas; class ProjectList; +class Session; +class StateManager; + +namespace FlowCanvas { class Module; } class Patchage { public: @@ -73,7 +76,9 @@ public: void status_msg(const std::string& msg); void update_state(); void store_window_location(); - + + void enqueue_resize(boost::shared_ptr<FlowCanvas::Module> module); + void flush_resize(); protected: void connect_widgets(); @@ -118,6 +123,8 @@ protected: boost::shared_ptr<PatchageCanvas> _canvas; + std::set< boost::shared_ptr<FlowCanvas::Module> > _pending_resize; + JackDriver* _jack_driver; StateManager* _state_manager; |