diff options
author | David Robillard <d@drobilla.net> | 2007-07-31 23:17:02 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2007-07-31 23:17:02 +0000 |
commit | 22395ab7d817dec53e2c2fff07de6d88db70492e (patch) | |
tree | e1b4d749e96bfe31f1ba545ad979ca4bbe8807c5 /src/bindings/ingen.i | |
parent | 012890277d8c3124bc8dd1df20b8e016c8d6d811 (diff) | |
download | ingen-22395ab7d817dec53e2c2fff07de6d88db70492e.tar.gz ingen-22395ab7d817dec53e2c2fff07de6d88db70492e.tar.bz2 ingen-22395ab7d817dec53e2c2fff07de6d88db70492e.zip |
Functional engine Python bindings (e.g. ingen -e -r patchomatic.py).
Rename window nitpick fix from Andrew Greenwood.
git-svn-id: http://svn.drobilla.net/lad/ingen@663 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/bindings/ingen.i')
-rw-r--r-- | src/bindings/ingen.i | 28 |
1 files changed, 17 insertions, 11 deletions
diff --git a/src/bindings/ingen.i b/src/bindings/ingen.i index e9a13dc3..dbf5ab10 100644 --- a/src/bindings/ingen.i +++ b/src/bindings/ingen.i @@ -4,16 +4,12 @@ #include "../common/interface/ClientInterface.hpp" #include "../common/interface/EngineInterface.hpp" #include "../libs/module/World.hpp" -#include "../libs/module/module.h" +/*#include "../libs/module/module.h"*/ +#include "ingen_bindings.hpp" namespace Ingen { namespace Shared { class World; } } -typedef Ingen::Shared::World World; -/*struct World { - World() { me = Ingen::Shared::get_world(); } - Ingen::Shared::World* me; -};*/ %} /*%ignore Ingen::Shared::EngineInterface;*/ @@ -22,18 +18,28 @@ typedef Ingen::Shared::World World; %include "../common/interface/EngineInterface.hpp" /*%include "../libs/module/World.hpp" %include "../libs/module/module.h"*/ -%include "../libs/module/module.h" +%include "../libs/module/World.hpp" +//%include "../libs/module/module.h" +%include "ingen_bindings.hpp" using namespace Ingen::Shared; namespace Ingen { namespace Shared { class World; } } -%typedef Ingen::Shared::World World; -/*struct World {};*/ +typedef Ingen::Shared::World World; +namespace Ingen { namespace Shared { %extend World { - World() { return Ingen::Shared::get_world(); } + World() { + if (!Ingen::Shared::ingen_world) { + fprintf(stderr, "ERROR: World uninitialized (running within Ingen?)\n"); + abort(); + } else { + return Ingen::Shared::ingen_world; + } + } /*SLV2World slv2() { return $self->me->slv2_world; }*/ +}; +} } /*SharedPtr<Ingen::Shared::EngineInterface> engine() { return $self->me->engine; }*/ -}; |