ee9ee12fbfd635af5ab902721815b4096cbcc1ff
[projects/chimara/chimara.git] / interpreters / chimara-frotz-plugin.h
1 #ifndef CHIMARA_FROTZ_PLUGIN_H
2 #define CHIMARA_FROTZ_PLUGIN_H
3
4 #include <glib.h>
5 #include <libpeas/peas.h>
6
7 G_BEGIN_DECLS
8
9 #define CHIMARA_TYPE_FROTZ_PLUGIN         (chimara_frotz_plugin_get_type())
10 #define CHIMARA_FROTZ_PLUGIN(o)           (G_TYPE_CHECK_INSTANCE_CAST((o), CHIMARA_TYPE_FROTZ_PLUGIN, ChimaraFrotzPlugin))
11 #define CHIMARA_FROTZ_PLUGIN_CLASS(k)     (G_TYPE_CHECK_CLASS_CAST((k), CHIMARA_TYPE_FROTZ_PLUGIN, ChimaraFrotzPlugin))
12 #define CHIMARA_IS_FROTZ_PLUGIN(o)        (G_TYPE_CHECK_INSTANCE_TYPE((o), CHIMARA_TYPE_FROTZ_PLUGIN))
13 #define CHIMARA_IS_FROTZ_PLUGIN_CLASS(k)  (G_TYPE_CHECK_CLASS_TYPE((k), CHIMARA_TYPE_FROTZ_PLUGIN))
14 #define CHIMARA_FROTZ_PLUGIN_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS((o), CHIMARA_TYPE_FROTZ_PLUGIN, ChimaraFrotzPluginClass))
15
16 typedef struct _ChimaraFrotzPlugin       ChimaraFrotzPlugin;
17 typedef struct _ChimaraFrotzPluginClass  ChimaraFrotzPluginClass;
18
19 struct _ChimaraFrotzPlugin {
20   PeasExtensionBase parent_instance;
21 };
22
23 struct _ChimaraFrotzPluginClass {
24   PeasExtensionBaseClass parent_class;
25 };
26
27 /**
28  * ChimaraFrotzDebugFlags:
29  * @CHIMARA_FROTZ_DEBUG_NONE: No debugging messages
30  * @CHIMARA_FROTZ_DEBUG_ATTRIBUTE_SETTING: Print a debug message whenever a
31  * Z-machine object attribute is set or cleared.
32  * @CHIMARA_FROTZ_DEBUG_ATTRIBUTE_TESTING: Print a debug message whenever a
33  * Z-machine object attribute is tested.
34  * @CHIMARA_FROTZ_DEBUG_OBJECT_MOVEMENT: Print a debug message whenever a
35  * Z-machine object is inserted into or removed from another object.
36  * @CHIMARA_FROTZ_DEBUG_OBJECT_LOCATING: Print a debug message whenever the
37  * location of a Z-machine object is checked.
38  *
39  * Controls what debugging messages Frotz should print. See the
40  * :debug-messages property.
41  */
42 typedef enum {
43         CHIMARA_FROTZ_DEBUG_NONE = 0,
44         CHIMARA_FROTZ_DEBUG_ATTRIBUTE_SETTING = 1 << 0,
45         CHIMARA_FROTZ_DEBUG_ATTRIBUTE_TESTING = 1 << 1,
46         CHIMARA_FROTZ_DEBUG_OBJECT_MOVEMENT = 1 << 2,
47         CHIMARA_FROTZ_DEBUG_OBJECT_LOCATING = 1 << 3,
48 } ChimaraFrotzDebugFlags;
49
50 GType chimara_frotz_plugin_get_type(void) G_GNUC_CONST;
51 G_MODULE_EXPORT void peas_register_types (PeasObjectModule *module);
52
53 G_END_DECLS
54
55 #endif /* CHIMARA_FROTZ_PLUGIN_H */