<http://www.gnu.org/licenses/>.
*/
+#include <irrlicht/irrlicht.h>
#include <libguile.h>
#include "wrapped.h"
+using namespace irr;
+
+/* Make a GOOPS instance from a C++ object pointer */
+SCM
+scm_from_irr_pointer (const char* class_name, void* pointer)
+{
+ SCM scm_class = scm_variable_ref (scm_c_public_lookup ("irrlicht", class_name));
+ SCM k_pointer = scm_from_utf8_keyword ("irr-pointer");
+ SCM scm_pointer = scm_from_pointer (pointer, NULL);
+ return scm_make (scm_list_3 (scm_class, k_pointer, scm_pointer));
+}
+
/* Extract C++ irrlicht object pointer from Guile object */
void*
scm_to_irr_pointer (SCM obj)