diff options
Diffstat (limited to 'base/gslibctx.h')
-rw-r--r-- | base/gslibctx.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/base/gslibctx.h b/base/gslibctx.h index f6ce40a32..173d2dc2a 100644 --- a/base/gslibctx.h +++ b/base/gslibctx.h @@ -81,6 +81,14 @@ typedef struct gs_fs_list_s { struct gs_fs_list_s *next; } gs_fs_list_t; +typedef int (*gs_callout_fn)(void *, void *, const char *, int, int, void *); + +typedef struct gs_callout_list_s { + struct gs_callout_list_s *next; + gs_callout_fn callout; + void *handle; +} gs_callout_list_t; + typedef struct { void *monitor; int refs; @@ -118,6 +126,8 @@ typedef struct { * all builds. */ void *cal_ctx; + gs_callout_list_t *callouts; + /* Stashed args */ int arg_max; int argc; @@ -194,6 +204,12 @@ void *gs_lib_ctx_get_cms_context( const gs_memory_t *mem ); void gs_lib_ctx_set_cms_context( const gs_memory_t *mem, void *cms_context ); int gs_lib_ctx_get_act_on_uel( const gs_memory_t *mem ); +int gs_lib_ctx_register_callout(gs_memory_t *mem, gs_callout_fn, void *arg); +void gs_lib_ctx_deregister_callout(gs_memory_t *mem, gs_callout_fn, void *arg); +int gs_lib_ctx_callout(gs_memory_t *mem, const char *dev_name, + int id, int size, void *data); + + #ifndef GS_THREADSAFE /* HACK to get at non garbage collection memory pointer * |