From 8e11a14939365c3a2994602b5db11a4fe6e8eaac Mon Sep 17 00:00:00 2001 From: Paul Gilbert Date: Sun, 14 Apr 2019 18:43:30 -0700 Subject: GLK: GLULXE: Set up method definitions, glkop methods --- engines/glk/glk_api.h | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'engines/glk/glk_api.h') diff --git a/engines/glk/glk_api.h b/engines/glk/glk_api.h index 9e4a230cd9..e54cd3c042 100644 --- a/engines/glk/glk_api.h +++ b/engines/glk/glk_api.h @@ -52,6 +52,11 @@ private: bool _gliFirstEvent; unsigned char _charTolowerTable[256]; unsigned char _charToupperTable[256]; + + gidispatch_rock_t(*gli_register_obj)(void *obj, uint objclass); + void(*gli_unregister_obj)(void *obj, uint objclass, gidispatch_rock_t objrock); + gidispatch_rock_t(*gli_register_arr)(void *array, uint len, char *typecode); + void(*gli_unregister_arr)(void *array, uint len, char *typecode, gidispatch_rock_t objrock); public: /** * Constructor @@ -298,6 +303,12 @@ public: /* dispa methods */ + void gidispatch_set_object_registry(gidispatch_rock_t(*regi)(void *obj, uint objclass), + void(*unregi)(void *obj, uint objclass, gidispatch_rock_t objrock)); + + void gidispatch_set_retained_registry(gidispatch_rock_t(*regi)(void *array, uint len, char *typecode), + void(*unregi)(void *array, uint len, char *typecode, gidispatch_rock_t objrock)); + uint32 gidispatch_count_classes() const; const gidispatch_intconst_t *gidispatch_get_class(uint32 index) const; uint32 gidispatch_count_intconst() const; @@ -307,6 +318,7 @@ public: gidispatch_function_t *gidispatch_get_function_by_id(uint32 id) const; const char *gidispatch_prototype(uint32 funcnum) const; void gidispatch_call(uint32 funcnum, uint32 numargs, gluniversal_t *arglist); + gidispatch_rock_t gidispatch_get_objrock(void *obj, uint objclass); }; } // End of namespace Glk -- cgit v1.2.3