summaryrefslogtreecommitdiffstats
path: root/src/shared/World.hpp
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2011-04-18 03:30:02 +0000
committerDavid Robillard <d@drobilla.net>2011-04-18 03:30:02 +0000
commit1776fe75458a11eeaa5ed0c26c6c9aa0e93f6f2c (patch)
tree16f09c2b731d2968a9b2390cf938d164d2920541 /src/shared/World.hpp
parentad02810bb505e823ed7222c785649f668baaa404 (diff)
downloadingen-1776fe75458a11eeaa5ed0c26c6c9aa0e93f6f2c.tar.gz
ingen-1776fe75458a11eeaa5ed0c26c6c9aa0e93f6f2c.tar.bz2
ingen-1776fe75458a11eeaa5ed0c26c6c9aa0e93f6f2c.zip
Saner module loading API.
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@3157 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/shared/World.hpp')
-rw-r--r--src/shared/World.hpp16
1 files changed, 9 insertions, 7 deletions
diff --git a/src/shared/World.hpp b/src/shared/World.hpp
index 4a07d4f6..189e2bbe 100644
--- a/src/shared/World.hpp
+++ b/src/shared/World.hpp
@@ -45,7 +45,6 @@ class EngineInterface;
class LV2Features;
class LV2URIMap;
class Store;
-class WorldImpl;
/** The "world" all Ingen modules may share.
*
@@ -61,16 +60,17 @@ public:
World(Raul::Configuration* conf, int& argc, char**& argv);
virtual ~World();
- virtual bool load(const char* name);
- virtual void unload_all();
+ virtual bool load_module(const char* name);
+ virtual void unload_modules();
- typedef SharedPtr<Ingen::Shared::EngineInterface> (*InterfaceFactory)(
- World* world, const std::string& engine_url);
+ typedef SharedPtr<Shared::EngineInterface> (*InterfaceFactory)(
+ World* world,
+ const std::string& engine_url);
virtual void add_interface_factory(const std::string& scheme,
InterfaceFactory factory);
- virtual SharedPtr<Ingen::Shared::EngineInterface> interface(
+ virtual SharedPtr<Shared::EngineInterface> interface(
const std::string& engine_url);
virtual bool run(const std::string& mime_type,
@@ -105,7 +105,9 @@ public:
virtual std::string jack_uuid();
private:
- WorldImpl* _impl;
+ class Pimpl;
+
+ Pimpl* _impl;
};
} // namespace Shared