*/
#include <dirent.h>
-#include <iostream>
#include <libguile.h>
#include "generators.h"
#include "mods.h"
#include "paths.h"
-
-SCM register_scene_generator (SCM name, SCM type, SCM proc)
+SCM
+register_scene_generator (SCM name,
+ SCM type,
+ SCM proc)
{
- SceneGenerator generator {scm_to_locale_string (name), scm_to_locale_string (type), proc };
- //register_generator (generator);
- printf ("Register: %s (%s)\n", generator.name.c_str (), generator.type.c_str ());
- scm_call_1 (proc, scm_from_int (-1));
+ SceneGenerator* generator =
+ register_generator (scm_to_utf8_string (name),
+ scm_to_utf8_string (scm_symbol_to_string (type)),
+ proc);
+ printf ("Register: %s (%s)\n", generator->name, generator->type);
+ scm_call_1 (generator->proc, scm_from_int (-1));
return SCM_UNSPECIFIED;
}
-void init_dungeon_master_module (void *unused)
+void
+init_dungeon_master_module (void *unused)
{
scm_c_define_gsubr ("register-scene-generator", 3, 0, 0, (scm_t_subr) register_scene_generator);
scm_c_export ("register-scene-generator", NULL);
}
-void scm_init_dungeon_master_module ()
+void
+scm_init_dungeon_master_module ()
{
scm_c_define_module ("dungeon-master", init_dungeon_master_module, NULL);
}
-void add_to_load_path (std::string path)
+void
+add_to_load_path (std::string path)
{
- // Add path to %load-path variable, needed for modules created in mods
+ // Add path to %load-path variable, needed for mods structured like modules
std::string exp = "(add-to-load-path \"" + path + "\")";
scm_c_eval_string (exp.c_str ());
}
-void load_dmaster_mods ()
+void
+load_dmaster_mods ()
{
scm_init_guile ();
scm_init_dungeon_master_module ();