00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef _GLOBUS_CALLOUT_H_
00018 #define _GLOBUS_CALLOUT_H_
00019
00027 #include "globus_common.h"
00028 #include "globus_callout_constants.h"
00029
00030 #ifdef __cplusplus
00031 extern "C" {
00032 #endif
00033
00034 #ifndef GLOBUS_GLOBAL_DOCUMENT_SET
00035
00039 #endif
00040
00118 #define GLOBUS_CALLOUT_MODULE (&globus_i_callout_module)
00119
00120 extern
00121 globus_module_descriptor_t globus_i_callout_module;
00122
00123
00128 typedef struct globus_i_callout_handle_s * globus_callout_handle_t;
00129
00130
00135 typedef globus_result_t (*globus_callout_function_t)(
00136 va_list ap);
00137
00138
00148 globus_result_t
00149 globus_callout_handle_init(
00150 globus_callout_handle_t * handle);
00151
00152 globus_result_t
00153 globus_callout_handle_destroy(
00154 globus_callout_handle_t handle);
00155
00166 globus_result_t
00167 globus_callout_read_config(
00168 globus_callout_handle_t handle,
00169 char * filename);
00170
00171 globus_result_t
00172 globus_callout_register(
00173 globus_callout_handle_t handle,
00174 char * type,
00175 char * library,
00176 char * symbol);
00177
00187 globus_result_t
00188 globus_callout_call_type(
00189 globus_callout_handle_t handle,
00190 char * type,
00191 ...);
00192
00193
00194 #ifdef __cplusplus
00195 }
00196 #endif
00197
00198 #endif