summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorBradley Smith2008-03-09 18:37:58 +0000
committerBradley Smith2008-03-09 18:37:58 +0000
commit1eac647d46231ec03bc9647b72d32dc093bf366d (patch)
treefbf409498759d5fcb08c44b986080a1cc6b32485 /include
parentModified Changelog. (diff)
downloadgnurobots-1eac647d46231ec03bc9647b72d32dc093bf366d.tar.gz
Misc cleanups and GType style conversion.
Signed-off-by: Bradley Smith <brad@brad-smith.co.uk>
Diffstat (limited to 'include')
-rw-r--r--include/grobot.h97
-rw-r--r--include/map.h24
-rw-r--r--include/userinterface.h333
3 files changed, 226 insertions, 228 deletions
diff --git a/include/grobot.h b/include/grobot.h
index 5495e0c..6ebcca3 100644
--- a/include/grobot.h
+++ b/include/grobot.h
@@ -17,9 +17,8 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
-#ifndef _G_ROBOT_H
-#define _G_ROBOT_H
-/* MACROS */
+#ifndef __G_ROBOT_H__
+#define __G_ROBOT_H__
#include <glib-object.h>
#include <glib.h>
@@ -28,72 +27,66 @@
G_BEGIN_DECLS
-extern GType _g_robot_type;
+#define G_TYPE_ROBOT g_robot_get_type()
+#define G_IS_ROBOT(obj) G_TYPE_CHECK_INSTANCE_TYPE ((obj),\
+ G_TYPE_ROBOT)
+#define G_IS_ROBOT_CLASS(klass) G_TYPE_CHECK_CLASS_TYPE ((klass),\
+ G_TYPE_ROBOT)
+#define G_ROBOT_GET_CLASS(obj) G_TYPE_INSTANCE_GET_CLASS ((obj),\
+ G_TYPE_ROBOT, GRobotClass)
+#define G_ROBOT(obj) G_TYPE_CHECK_INSTANCE_CAST ((obj),\
+ G_TYPE_ROBOT, GRobot)
+#define G_ROBOT_CLASS(klass) G_TYPE_CHECK_CLASS_CAST ((klass),\
+ G_TYPE_ROBOT, GRobotClass)
typedef struct _GRobot GRobot;
+typedef struct _GRobotClass GRobotClass;
struct _GRobot {
- GObject object;
-
- gint x;
- gint y;
- gint dir;
- glong score;
- glong energy;
- glong shields;
- glong shots;
- glong units;
+ GObject object;
+
+ gint x;
+ gint y;
+ gint dir;
+ glong score;
+ glong energy;
+ glong shields;
+ glong shots;
+ glong units;
UserInterface *ui;
Map *map;
-};
-
-typedef struct _GRobotClass GRobotClass;
+};
struct _GRobotClass {
- GObjectClass parent_class;
+ GObjectClass parent_class;
- void (*death) (GRobot *robot);
+ void (*death) (GRobot *robot);
};
-#define G_TYPE_ROBOT (_g_robot_type)
-#define G_IS_ROBOT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), G_TYPE_ROBOT))
-#define G_IS_ROBOT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), G_TYPE_ROBOT))
-#define G_ROBOT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), G_TYPE_ROBOT, GRobotClass))
-#define G_ROBOT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), G_TYPE_ROBOT, GRobot))
-#define G_ROBOT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), G_TYPE_ROBOT, GRobotClass))
-
/* some convenient macros */
-#define G_ROBOT_POSITION_X(robot) ((robot)->x)
-#define G_ROBOT_POSITION_Y(robot) ((robot)->y)
+#define G_ROBOT_POSITION_X(robot) ((robot)->x)
+#define G_ROBOT_POSITION_Y(robot) ((robot)->y)
/* normal GObject stuff */
-GType g_robot_get_type (void);
+GType g_robot_get_type(void) G_GNUC_CONST;
/* Our object functions */
-GRobot* g_robot_new (int x,
- int y,
- int dir,
- long score,
- long energy,
- long shield,
- long units,
- long shots,
- UserInterface *ui,
- Map *map);
-
-void g_robot_turn (GRobot *robot, gint num_turns);
-gboolean g_robot_move (GRobot *robot, gint steps);
-gboolean g_robot_smell (GRobot *robot, gchar *str);
-gboolean g_robot_feel (GRobot *robot, gchar *str);
-gboolean g_robot_look (GRobot *robot, gchar *str);
-gboolean g_robot_grab (GRobot *robot);
-gboolean g_robot_zap (GRobot *robot);
-gboolean g_robot_stop (GRobot *robot);
-glong g_robot_get_shields (GRobot *robot);
-glong g_robot_get_energy (GRobot *robot);
-glong g_robot_get_score (GRobot *robot);
+GRobot* g_robot_new(int x, int y, int dir, long score, long energy,
+ long shield, long units, long shots, UserInterface *ui, Map *map);
+
+void g_robot_turn (GRobot *robot, gint num_turns);
+gboolean g_robot_move (GRobot *robot, gint steps);
+gboolean g_robot_smell (GRobot *robot, gchar *str);
+gboolean g_robot_feel (GRobot *robot, gchar *str);
+gboolean g_robot_look (GRobot *robot, gchar *str);
+gboolean g_robot_grab (GRobot *robot);
+gboolean g_robot_zap (GRobot *robot);
+gboolean g_robot_stop (GRobot *robot);
+glong g_robot_get_shields (GRobot *robot);
+glong g_robot_get_energy (GRobot *robot);
+glong g_robot_get_score (GRobot *robot);
G_END_DECLS
-#endif
+#endif /* __G_ROBOT_H__ */
diff --git a/include/map.h b/include/map.h
index f8f8263..d807f7d 100644
--- a/include/map.h
+++ b/include/map.h
@@ -25,16 +25,16 @@
G_BEGIN_DECLS
-#define G_TYPE_MAP (map_get_type())
-#define G_IS_MAP(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), \
- G_TYPE_MAP))
-#define G_IS_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), G_TYPE_MAP))
-#define MAP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), \
- G_TYPE_MAP, MapClass))
-#define MAP(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), \
- G_TYPE_MAP, Map))
-#define MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), \
- G_TYPE_MAP, MapClass))
+#define G_TYPE_MAP map_get_type()
+#define G_IS_MAP(obj) G_TYPE_CHECK_INSTANCE_TYPE((obj), \
+ G_TYPE_MAP)
+#define G_IS_MAP_CLASS(klass) G_TYPE_CHECK_CLASS_TYPE((klass), G_TYPE_MAP)
+#define MAP_GET_CLASS(obj) G_TYPE_INSTANCE_GET_CLASS((obj), \
+ G_TYPE_MAP, MapClass)
+#define MAP(obj) G_TYPE_CHECK_INSTANCE_CAST((obj), \
+ G_TYPE_MAP, Map)
+#define MAP_CLASS(klass) G_TYPE_CHECK_CLASS_CAST((klass), \
+ G_TYPE_MAP, MapClass)
typedef struct
{
@@ -64,10 +64,10 @@ struct _MapClass {
#define MAP_SET_OBJECT(map, x, y, thing) ((map)->_map[(y)][(x)] = thing)
/* normal GObject stuff */
-GType map_get_type (void);
+GType map_get_type(void);
/* Our object functions */
-Map* map_new_from_file (const gchar *map, gint num_rows, gint num_cols);
+Map* map_new_from_file(const gchar *map, gint num_rows, gint num_cols);
G_END_DECLS
diff --git a/include/userinterface.h b/include/userinterface.h
index 691e847..ef86f74 100644
--- a/include/userinterface.h
+++ b/include/userinterface.h
@@ -26,7 +26,21 @@
G_BEGIN_DECLS
-extern GType _user_interface_type;
+#define G_TYPE_USER_INTERFACE \
+ user_interface_get_type()
+#define G_IS_USER_INTERFACE(obj) \
+ G_TYPE_CHECK_INSTANCE_TYPE(obj, G_TYPE_USER_INTERFACE)
+#define G_IS_USER_INTERFACE_CLASS(klass)\
+ G_TYPE_CHECK_CLASS_TYPE(klass, G_TYPE_USER_INTERFACE)
+#define USER_INTERFACE_GET_CLASS(obj) \
+ G_TYPE_INSTANCE_GET_INTERFACE(obj, G_TYPE_USER_INTERFACE,\
+ UserInterfaceClass)
+#define USER_INTERFACE(obj) \
+ G_TYPE_CHECK_INSTANCE_CAST(obj, G_TYPE_USER_INTERFACE, \
+ UserInterface)
+#define USER_INTERFACE_CLASS(klass) \
+ G_TYPE_CHECK_CLASS_CAST(klass, G_TYPE_USER_INTERFACE,\
+ UserInterfaceClass)
typedef struct _UserInterface UserInterface;
typedef struct _UserInterfaceClass UserInterfaceClass;
@@ -34,174 +48,165 @@ typedef struct _UserInterfaceClass UserInterfaceClass;
struct _UserInterfaceClass {
GTypeInterface parent;
- void (* user_interface_add_thing) (UserInterface *ui,
- gint x,
- gint y,
- gint thing);
-
- void (* user_interface_draw) (UserInterface *ui);
-
- void (* user_interface_update_status) (UserInterface *ui,
- const gchar *s,
- glong energy,
- glong score,
- glong shields);
-
- void (* user_interface_move_robot) (UserInterface *ui,
- gint from_x,
- gint from_y,
- gint to_x,
- gint to_y,
- gint cdir,
- glong energy,
- glong score,
- glong shields);
-
- void (* user_interface_robot_smell) (UserInterface *ui,
- gint x,
- gint y,
- gint cdir,
- glong energy,
- glong score,
- glong shields);
-
- void (* user_interface_robot_zap) (UserInterface *ui,
- gint x,
- gint y,
- gint cdir,
- gint x_to,
- gint y_to,
- glong energy,
- glong score,
- glong shields);
-
- void (* user_interface_robot_feel) (UserInterface *ui,
- gint x,
- gint y,
- gint cdir,
- gint x_to,
- gint y_to,
- glong energy,
- glong score,
- glong shields);
-
- void (* user_interface_robot_grab) (UserInterface *ui,
- gint x,
- gint y,
- gint cdir,
- gint x_to,
- gint y_to,
- glong energy,
- glong score,
- glong shields);
-
- void (* user_interface_robot_look) (UserInterface *ui,
- gint x,
- gint y,
- gint cdir,
- gint x_to,
- gint y_to,
- glong energy,
- glong score,
- glong shields);
-
-/* routines to get/display data from/to user */
- void (* user_interface_get_string) (UserInterface *ui,
- gchar *prompt,
- gchar *buff,
- gint len);
+ void (* user_interface_add_thing) (UserInterface *ui,
+ gint x,
+ gint y,
+ gint thing);
+
+ void (* user_interface_draw) (UserInterface *ui);
+
+ void (* user_interface_update_status) (UserInterface *ui,
+ const gchar *s,
+ glong energy,
+ glong score,
+ glong shields);
+
+ void (* user_interface_move_robot) (UserInterface *ui,
+ gint from_x,
+ gint from_y,
+ gint to_x,
+ gint to_y,
+ gint cdir,
+ glong energy,
+ glong score,
+ glong shields);
+
+ void (* user_interface_robot_smell) (UserInterface *ui,
+ gint x,
+ gint y,
+ gint cdir,
+ glong energy,
+ glong score,
+ glong shields);
+
+ void (* user_interface_robot_zap) (UserInterface *ui,
+ gint x,
+ gint y,
+ gint cdir,
+ gint x_to,
+ gint y_to,
+ glong energy,
+ glong score,
+ glong shields);
+
+ void (* user_interface_robot_feel) (UserInterface *ui,
+ gint x,
+ gint y,
+ gint cdir,
+ gint x_to,
+ gint y_to,
+ glong energy,
+ glong score,
+ glong shields);
+
+ void (* user_interface_robot_grab) (UserInterface *ui,
+ gint x,
+ gint y,
+ gint cdir,
+ gint x_to,
+ gint y_to,
+ glong energy,
+ glong score,
+ glong shields);
+
+ void (* user_interface_robot_look) (UserInterface *ui,
+ gint x,
+ gint y,
+ gint cdir,
+ gint x_to,
+ gint y_to,
+ glong energy,
+ glong score,
+ glong shields);
+
+ void (* user_interface_get_string) (UserInterface *ui,
+ gchar *prompt,
+ gchar *buff,
+ gint len);
};
-#define G_TYPE_USER_INTERFACE (_user_interface_type)
-#define G_IS_USER_INTERFACE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), G_TYPE_USER_INTERFACE))
-#define G_IS_USER_INTERFACE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), G_TYPE_USER_INTERFACE))
-#define USER_INTERFACE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), G_TYPE_USER_INTERFACE, UserInterfaceClass))
-#define USER_INTERFACE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), G_TYPE_USER_INTERFACE, UserInterface))
-#define USER_INTERFACE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), G_TYPE_USER_INTERFACE, UserInterfaceClass))
-
/* normal GObject stuff */
-GType user_interface_get_type (void);
+GType user_interface_get_type (void);
/* functions we want implemented by the implementers of our interface */
-void user_interface_add_thing (UserInterface *ui,
- gint x,
- gint y,
- gint thing);
-
-void user_interface_draw (UserInterface *ui);
-
-void user_interface_update_status (UserInterface *ui,
- const gchar *s,
- glong energy,
- glong score,
- glong shields);
-
-void user_interface_move_robot (UserInterface *ui,
- gint from_x,
- gint from_y,
- gint to_x,
- gint to_y,
- gint cdir,
- glong energy,
- glong score,
- glong shields);
-
-void user_interface_robot_smell (UserInterface *ui,
- gint x,
- gint y,
- gint cdir,
- glong energy,
- glong score,
- glong shields);
-
-void user_interface_robot_zap (UserInterface *ui,
- gint x,
- gint y,
- gint cdir,
- gint x_to,
- gint y_to,
- glong energy,
- glong score,
- glong shields);
-
-void user_interface_robot_feel (UserInterface *ui,
- gint x,
- gint y,
- gint cdir,
- gint x_to,
- gint y_to,
- glong energy,
- glong score,
- glong shields);
-
-void user_interface_robot_grab (UserInterface *ui,
- gint x,
- gint y,
- gint cdir,
- gint x_to,
- gint y_to,
- glong energy,
- glong score,
- glong shields);
-
-void user_interface_robot_look (UserInterface *ui,
- gint x,
- gint y,
- gint cdir,
- gint x_to,
- gint y_to,
- glong energy,
- glong score,
- glong shields);
-
-/* routines to get/display data from/to user */
-void user_interface_get_string (UserInterface *ui,
- gchar *prompt,
- gchar *buff,
- gint len);
-
-typedef UserInterface * (* UserInterfaceInitFunc) (Map *map,
- GType parent_type);
+void user_interface_add_thing (UserInterface *ui,
+ gint x,
+ gint y,
+ gint thing);
+
+void user_interface_draw (UserInterface *ui);
+
+void user_interface_update_status (UserInterface *ui,
+ const gchar *s,
+ glong energy,
+ glong score,
+ glong shields);
+
+void user_interface_move_robot (UserInterface *ui,
+ gint from_x,
+ gint from_y,
+ gint to_x,
+ gint to_y,
+ gint cdir,
+ glong energy,
+ glong score,
+ glong shields);
+
+void user_interface_robot_smell (UserInterface *ui,
+ gint x,
+ gint y,
+ gint cdir,
+ glong energy,
+ glong score,
+ glong shields);
+
+void user_interface_robot_zap (UserInterface *ui,
+ gint x,
+ gint y,
+ gint cdir,
+ gint x_to,
+ gint y_to,
+ glong energy,
+ glong score,
+ glong shields);
+
+void user_interface_robot_feel (UserInterface *ui,
+ gint x,
+ gint y,
+ gint cdir,
+ gint x_to,
+ gint y_to,
+ glong energy,
+ glong score,
+ glong shields);
+
+void user_interface_robot_grab (UserInterface *ui,
+ gint x,
+ gint y,
+ gint cdir,
+ gint x_to,
+ gint y_to,
+ glong energy,
+ glong score,
+ glong shields);
+
+void user_interface_robot_look (UserInterface *ui,
+ gint x,
+ gint y,
+ gint cdir,
+ gint x_to,
+ gint y_to,
+ glong energy,
+ glong score,
+ glong shields);
+
+void user_interface_get_string (UserInterface *ui,
+ gchar *prompt,
+ gchar *buff,
+ gint len);
+
+typedef UserInterface * (* UserInterfaceInitFunc) (Map *map,
+ GType parent_type);
#define USER_INTERFACE_INIT_FUNCTION "user_interface_new"
G_END_DECLS