]> git.jsancho.org Git - guile-irrlicht.git/blobdiff - src/guile-irrlicht.cpp
Macro for defining guile procedures
[guile-irrlicht.git] / src / guile-irrlicht.cpp
index a1e84116ed28d4b07e88e873ae740eaaf5e7384c..db77dab18be67cab0fde9a936f20c6738954e92d 100644 (file)
@@ -30,6 +30,7 @@
 #include "event-receiver.h"
 #include "file-archive.h"
 #include "file-system.h"
+#include "gsubr.h"
 #include "gui-element.h"
 #include "gui-environment.h"
 #include "gui-static-text.h"
@@ -78,14 +79,12 @@ extern "C" {
     init_video_driver ();
 
     // Shared procedures (used by two or more objects)
-    scm_c_define_gsubr ("draw-all", 1, 0, 0, (scm_t_subr)irr_drawAll);
-    scm_c_define_gsubr ("get-name", 1, 0, 0, (scm_t_subr)irr_getName);
-    scm_c_define_gsubr ("set-material!", 2, 0, 0, (scm_t_subr)irr_setMaterial);
-    scm_c_define_gsubr ("set-material-flag!", 3, 0, 0, (scm_t_subr)irr_setMaterialFlag);
-    scm_c_define_gsubr ("set-position!", 2, 0, 0, (scm_t_subr)irr_setPosition);
-    scm_c_define_gsubr ("set-visible!", 2, 0, 0, (scm_t_subr)irr_setVisible);
-    scm_c_export ("draw-all", "get-name", "set-material!", "set-material-flag!",
-                  "set-position!", "set-visible!", NULL);
+    DEFINE_GSUBR ("draw-all", 1, 0, 0, irr_drawAll);
+    DEFINE_GSUBR ("get-name", 1, 0, 0, irr_getName);
+    DEFINE_GSUBR ("set-material!", 2, 0, 0, irr_setMaterial);
+    DEFINE_GSUBR ("set-material-flag!", 3, 0, 0, irr_setMaterialFlag);
+    DEFINE_GSUBR ("set-position!", 2, 0, 0, irr_setPosition);
+    DEFINE_GSUBR ("set-visible!", 2, 0, 0, irr_setVisible);
   }
 
   SCM