summaryrefslogtreecommitdiffstats
path: root/src/progs/ingenuity/Loader.h
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2006-09-09 14:24:56 +0000
committerDavid Robillard <d@drobilla.net>2006-09-09 14:24:56 +0000
commitfca95e5d454d37bd74b98f5bce35cfcbaee86c3f (patch)
tree97fcf6e8afaf4356d46a24236e9aa2451ab55698 /src/progs/ingenuity/Loader.h
parentb853b3dde1f7028dd275f78433a6ad9b5b9f61c7 (diff)
downloadingen-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/Loader.h')
-rw-r--r--src/progs/ingenuity/Loader.h17
1 files changed, 10 insertions, 7 deletions
diff --git a/src/progs/ingenuity/Loader.h b/src/progs/ingenuity/Loader.h
index df9166d2..7ff6f189 100644
--- a/src/progs/ingenuity/Loader.h
+++ b/src/progs/ingenuity/Loader.h
@@ -19,18 +19,19 @@
#include <string>
#include <cassert>
+#include "ModelEngineInterface.h"
using std::string;
namespace Ingen { namespace Client {
class PatchLibrarian;
class PatchModel;
+ class ModelEngineInterface;
} }
-using Ingen::Client::PatchLibrarian;
-using Ingen::Client::PatchModel;
-
+using namespace Ingen::Client;
namespace Ingenuity {
-
+
+
/** Event to run in the Loader thread.
*
* \ingroup Ingenuity
@@ -113,15 +114,17 @@ private:
*
* This is a seperate thread so it can send all the loading message without
* blocking everything else, so the app can respond to the incoming events
- * caused as a result of the patch loading.
+ * caused as a result of the patch loading, while the patch loads.
*
* \ingroup Ingenuity
*/
class Loader
{
public:
- Loader(PatchLibrarian* const patch_librarian);
- ~Loader() { m_thread_exit_flag = true; }
+ Loader(CountedPtr<ModelEngineInterface> engine);
+ ~Loader();
+
+ PatchLibrarian& librarian() { return *m_patch_librarian; }
void launch();
void exit() { m_thread_exit_flag = true; }