22 #ifndef GLOBUS_EXTENSION_H    23 #define GLOBUS_EXTENSION_H    34 #define GLOBUS_EXTENSION_MODULE (&globus_i_extension_module)    38     GLOBUS_EXTENSION_ERROR_OPEN_FAILED,
    39     GLOBUS_EXTENSION_ERROR_LOOKUP_FAILED
    56 #define GlobusExtensionDefineModule(name)                                   \    57     globus_module_descriptor_t name##_module    58 #define GlobusExtensionDeclareModule(name)                                  \    59     extern globus_module_descriptor_t name##_module    60 #define GlobusExtensionMyModule(name) &name##_module    96     const char *                        extension_name);
    99 globus_extension_deactivate(
   100     const char *                        extension_name);
   102 typedef struct globus_l_extension_handle_s * globus_extension_handle_t;
   106     globus_hashtable_t                  table;
   109 } globus_extension_registry_t;
   126 globus_extension_registry_add(
   127     globus_extension_registry_t *       registry,
   133 globus_extension_registry_remove(
   134     globus_extension_registry_t *       registry,
   138 globus_extension_registry_set_hashing(
   139     globus_extension_registry_t *       registry,
   161     globus_extension_handle_t *         handle,
   162     globus_extension_registry_t *       registry,
   166 globus_extension_reference(
   167     globus_extension_handle_t           handle);
   170 globus_extension_release(
   171     globus_extension_handle_t           handle);
   176 globus_extension_get_module_version(
   177     globus_extension_handle_t           handle,
   178     globus_version_t *                  version);
   181 globus_extension_error_match(
   182     globus_extension_handle_t           handle,
   183     globus_object_t *                   error,
   188 (*globus_extension_error_match_cb_t)(
   189     globus_object_t *                   error,
   194 globus_extension_error_match_with_cb(
   195     globus_extension_handle_t           handle,
   196     globus_object_t *                   error,
   197     globus_extension_error_match_cb_t   callback,
   206     const char *                        extension_name,
   210 globus_extension_unregister_builtin(
   211     const char *                        extension_name);
   215     char *                              extension_name;
   217 } globus_extension_builtin_t;
   221 globus_extension_register_builtins(
   222     globus_extension_builtin_t *        builtins);
   225 globus_extension_unregister_builtins(
   226     globus_extension_builtin_t *        builtins);
 int globus_extension_activate(const char *extension_name)
Definition: globus_extension.c:528
 
int globus_bool_t
Boolean type. 
Definition: globus_types.h:93
 
Reference Counting Module Activation and Deactivation. 
 
int(* globus_hashtable_hash_func_t)(void *key, int limit)
Definition: globus_hashtable.h:58
 
int(* globus_hashtable_keyeq_func_t)(void *key1, void *key2)
Definition: globus_hashtable.h:70
 
int globus_extension_register_builtin(const char *extension_name, globus_module_descriptor_t *module_descriptor)
Definition: globus_extension.c:1100
 
void * globus_extension_lookup(globus_extension_handle_t *handle, globus_extension_registry_t *registry, void *symbol)
Definition: globus_extension.c:872
 
Module Descriptor. 
Definition: globus_module.h:71