diff options
author | David Robillard <d@drobilla.net> | 2006-09-09 14:24:56 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2006-09-09 14:24:56 +0000 |
commit | fca95e5d454d37bd74b98f5bce35cfcbaee86c3f (patch) | |
tree | 97fcf6e8afaf4356d46a24236e9aa2451ab55698 /src/progs/ingenuity/App.h | |
parent | b853b3dde1f7028dd275f78433a6ad9b5b9f61c7 (diff) | |
download | ingen-fca95e5d454d37bd74b98f5bce35cfcbaee86c3f.tar.gz ingen-fca95e5d454d37bd74b98f5bce35cfcbaee86c3f.tar.bz2 ingen-fca95e5d454d37bd74b98f5bce35cfcbaee86c3f.zip |
Drove 'er home! Working monolothic Ingenuity (ie. in-process engine).
Countless bugfixes.
git-svn-id: http://svn.drobilla.net/lad/ingen@123 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/progs/ingenuity/App.h')
-rw-r--r-- | src/progs/ingenuity/App.h | 26 |
1 files changed, 15 insertions, 11 deletions
diff --git a/src/progs/ingenuity/App.h b/src/progs/ingenuity/App.h index 2d56e445..06d52ca3 100644 --- a/src/progs/ingenuity/App.h +++ b/src/progs/ingenuity/App.h @@ -34,6 +34,7 @@ namespace Ingen { namespace Client { class PluginModel; class Store; class SigClientInterface; + class ModelEngineInterface; } } using namespace Ingen::Client; @@ -59,6 +60,7 @@ class PatchTreeView; class PatchTreeWindow; class ConnectWindow; class Configuration; +class Loader; /** Singleton master class most everything is contained within. @@ -81,7 +83,9 @@ public: void add_patch_window(PatchWindow* pw); void remove_patch_window(PatchWindow* pw); - int num_open_patch_windows(); + int num_open_patch_windows(); + + void attach(CountedPtr<ModelEngineInterface>& engine, CountedPtr<SigClientInterface>& client); ConnectWindow* connect_window() const { return _connect_window; } Gtk::Dialog* about_dialog() const { return _about_dialog; } @@ -90,22 +94,23 @@ public: PatchTreeWindow* patch_tree() const { return _patch_tree_window; } Configuration* configuration() const { return _configuration; } Store* store() const { return _store; } + Loader* loader() const { return _loader; } - const CountedPtr<SigClientInterface>& client() const { return _listener; } - - static void instantiate(CountedPtr<SigClientInterface>& listener); + const CountedPtr<ModelEngineInterface>& engine() const { return _engine; } + const CountedPtr<SigClientInterface>& client() const { return _client; } static inline App& instance() { assert(_instance); return *_instance; } + static void instantiate(); protected: - App(CountedPtr<SigClientInterface> listener); + App(); static App* _instance; - //bool connect_callback(); - //bool idle_callback(); - - CountedPtr<SigClientInterface> _listener; - Store* _store; + CountedPtr<ModelEngineInterface> _engine; + CountedPtr<SigClientInterface> _client; + + Store* _store; + Loader* _loader; Configuration* _configuration; @@ -116,7 +121,6 @@ protected: PatchTreeWindow* _patch_tree_window; ConfigWindow* _config_window; Gtk::Dialog* _about_dialog; - Gtk::Button* _engine_error_close_button; /** Used to avoid feedback loops with (eg) process checkbutton * FIXME: Maybe this should be globally implemented at the Controller level, |