17 #ifndef GLOBUS_SCHEDULER_EVENT_GENERATOR_H
18 #define GLOBUS_SCHEDULER_EVENT_GENERATOR_H
20 #include "globus_common.h"
46 #if __STDC_VERSION__ == 199901L
47 # define MYNAME __func__
48 #elif defined(__GNUC__)
49 # define MYNAME __FUNCTION__
54 typedef void (*globus_scheduler_event_generator_fault_t)(
56 globus_result_t fault);
58 #define GLOBUS_SEG_ERROR_NULL_OBJECT() \
59 globus_error_construct_error(GLOBUS_SCHEDULER_EVENT_GENERATOR_MODULE, \
61 GLOBUS_SEG_ERROR_TYPE_NULL, \
67 #define GLOBUS_SEG_ERROR_ALREADY_SET_OBJECT() \
68 globus_error_construct_error(GLOBUS_SCHEDULER_EVENT_GENERATOR_MODULE, \
70 GLOBUS_SEG_ERROR_TYPE_ALREADY_SET, \
76 #define GLOBUS_SEG_ERROR_INVALID_MODULE_OBJECT(module, errmsg) \
77 globus_error_construct_error(GLOBUS_SCHEDULER_EVENT_GENERATOR_MODULE, \
79 GLOBUS_SEG_ERROR_TYPE_INVALID_MODULE, \
83 "Invalid module %s: %s", \
87 #define GLOBUS_SEG_ERROR_INVALID_FORMAT_OBJECT(fmt) \
88 globus_error_construct_error(GLOBUS_SCHEDULER_EVENT_GENERATOR_MODULE, \
90 GLOBUS_SEG_ERROR_TYPE_INVALID_FORMAT, \
94 "Invalid format %s", \
97 #define GLOBUS_SEG_ERROR_OUT_OF_MEMORY_OBJECT() \
98 globus_error_construct_error(GLOBUS_SCHEDULER_EVENT_GENERATOR_MODULE, \
100 GLOBUS_SEG_ERROR_TYPE_OUT_OF_MEMORY, \
106 #define GLOBUS_SEG_ERROR_LOADING_MODULE_OBJECT(module, dlerr_msg) \
107 globus_error_construct_error(GLOBUS_SCHEDULER_EVENT_GENERATOR_MODULE, \
109 GLOBUS_SEG_ERROR_TYPE_LOADING_MODULE, \
113 "Unable to dlopen module \"%s\": %s", \
117 #define GLOBUS_SEG_ERROR_NULL \
118 globus_error_put(GLOBUS_SEG_ERROR_NULL_OBJECT())
120 #define GLOBUS_SEG_ERROR_ALREADY_SET \
121 globus_error_put(GLOBUS_SEG_ERROR_ALREADY_SET_OBJECT())
123 #define GLOBUS_SEG_ERROR_INVALID_MODULE(module, errmsg) \
124 globus_error_put(GLOBUS_SEG_ERROR_INVALID_MODULE_OBJECT(module, errmsg))
126 #define GLOBUS_SEG_ERROR_INVALID_FORMAT(fmt) \
127 globus_error_put(GLOBUS_SEG_ERROR_INVALID_FORMAT_OBJECT(fmt))
129 #define GLOBUS_SEG_ERROR_OUT_OF_MEMORY \
130 globus_error_put(GLOBUS_SEG_ERROR_OUT_OF_MEMORY_OBJECT())
132 #define GLOBUS_SEG_ERROR_LOADING_MODULE(module, dlerr_msg) \
133 globus_error_put(GLOBUS_SEG_ERROR_LOADING_MODULE_OBJECT(module, \
136 extern globus_module_descriptor_t globus_i_scheduler_event_generator_module;
137 #define GLOBUS_SCHEDULER_EVENT_GENERATOR_MODULE \
138 (&globus_i_scheduler_event_generator_module)
159 globus_scheduler_event(
164 globus_scheduler_event_pending(
169 globus_scheduler_event_active(
174 globus_scheduler_event_failed(
180 globus_scheduler_event_done(
186 globus_scheduler_event_generator_get_timestamp(
Definition: globus_scheduler_event_generator.h:42
Definition: globus_scheduler_event_generator.h:34
Definition: globus_scheduler_event_generator.h:32
Definition: globus_scheduler_event_generator.h:36
Definition: globus_scheduler_event_generator.h:40
globus_scheduler_event_generator_error_t
Definition: globus_scheduler_event_generator.h:29
Definition: globus_scheduler_event_generator.h:38