]> git.jsancho.org Git - guile-irrlicht.git/blobdiff - src/device.cpp
Get irrlicht objects
[guile-irrlicht.git] / src / device.cpp
index b9ce376dbe93419e42bad291038f785e47914d8e..1b06a48c59cb551d204f4991e52fea6627fcd93a 100644 (file)
@@ -40,6 +40,10 @@ extern "C" {
   {
     init_device_type ();
     DEFINE_GSUBR ("irr_createDevice", 7, 0, 0, irr_createDevice);
+    DEFINE_GSUBR ("irr_IrrlichtDevice_getGUIEnvironment", 1, 0, 0,
+                  irr_IrrlichtDevice_getGUIEnvironment);
+    DEFINE_GSUBR ("irr_IrrlichtDevice_getSceneManager", 1, 0, 0,
+                  irr_IrrlichtDevice_getSceneManager);
     DEFINE_GSUBR ("irr_IrrlichtDevice_getVideoDriver", 1, 0, 0,
                   irr_IrrlichtDevice_getVideoDriver);
     DEFINE_GSUBR ("irr_IrrlichtDevice_setWindowCaption", 2, 0, 0,
@@ -76,6 +80,21 @@ extern "C" {
     return scm_from_pointer ((void*)device, NULL);
   }
 
+  SCM
+  irr_IrrlichtDevice_getGUIEnvironment (SCM device){
+    gui::IGUIEnvironment* gui_env =
+      ((IrrlichtDevice*)scm_to_pointer (device))->getGUIEnvironment ();
+    return scm_from_pointer ((void*)gui_env, NULL);
+  }
+
+  SCM
+  irr_IrrlichtDevice_getSceneManager (SCM device)
+  {
+    scene::ISceneManager* manager =
+      ((IrrlichtDevice*)scm_to_pointer (device))->getSceneManager ();
+    return scm_from_pointer ((void*)manager, NULL);
+  }
+
   SCM
   irr_IrrlichtDevice_getVideoDriver (SCM device)
   {