27 #ifndef EMBB_MTAPI_C_MTAPI_EXT_H_ 28 #define EMBB_MTAPI_C_MTAPI_EXT_H_ 31 #include <embb/mtapi/c/mtapi.h> 62 MTAPI_OUT mtapi_status_t* status
75 MTAPI_OUT mtapi_status_t* status
88 MTAPI_OUT mtapi_status_t* status
153 MTAPI_IN mtapi_job_id_t job_id,
159 action_finalize_function,
160 MTAPI_IN
void* plugin_data,
162 MTAPI_IN
void* node_local_data,
164 MTAPI_IN mtapi_size_t node_local_data_size,
168 MTAPI_OUT mtapi_status_t* status
173 typedef mtapi_uint_t(*mtapi_ext_problem_size_function_t)(
177 enum mtapi_ext_job_attributes_enum {
178 MTAPI_JOB_PROBLEM_SIZE_FUNCTION,
181 MTAPI_JOB_DEFAULT_PROBLEM_SIZE
186 #define MTAPI_JOB_DEFAULT_PROBLEM_SIZE_SIZE sizeof(mtapi_uint_t) 193 mtapi_ext_problem_size_function_t
251 MTAPI_IN mtapi_job_hndl_t job,
252 MTAPI_IN mtapi_uint_t attribute_num,
253 MTAPI_IN
void* attribute,
254 MTAPI_IN mtapi_size_t attribute_size,
258 MTAPI_OUT mtapi_status_t* status
274 #endif // EMBB_MTAPI_C_MTAPI_EXT_H_ mtapi_action_hndl_t mtapi_ext_plugin_action_create(MTAPI_IN mtapi_job_id_t job_id, MTAPI_IN mtapi_ext_plugin_task_start_function_t task_start_function, MTAPI_IN mtapi_ext_plugin_task_cancel_function_t task_cancel_function, MTAPI_IN mtapi_ext_plugin_action_finalize_function_t action_finalize_function, MTAPI_IN void *plugin_data, MTAPI_IN void *node_local_data, MTAPI_IN mtapi_size_t node_local_data_size, MTAPI_IN mtapi_action_attributes_t *attributes, MTAPI_OUT mtapi_status_t *status)
This function creates a plugin action.
void mtapi_ext_yield()
This function yields execution to the MTAPI scheduler for at most one task.
struct mtapi_action_attributes_struct mtapi_action_attributes_t
Action attributes type.
Definition: mtapi.h:870
void(* mtapi_ext_plugin_task_start_function_t)(MTAPI_IN mtapi_task_hndl_t task, MTAPI_OUT mtapi_status_t *status)
Represents a callback function that is called when a plugin action is about to start a plugin task...
Definition: mtapi_ext.h:60
void mtapi_ext_job_set_attribute(MTAPI_IN mtapi_job_hndl_t job, MTAPI_IN mtapi_uint_t attribute_num, MTAPI_IN void *attribute, MTAPI_IN mtapi_size_t attribute_size, MTAPI_OUT mtapi_status_t *status)
This function changes the value of the attribute that corresponds to the given attribute_num for this...
struct mtapi_task_hndl_struct mtapi_task_hndl_t
Task handle type.
Definition: mtapi.h:689
struct mtapi_action_hndl_struct mtapi_action_hndl_t
Action handle type.
Definition: mtapi.h:979
mtapi_ext_problem_size_function_t problem_size_func
stores MTAPI_JOB_PROBLEM_SIZE_FUNCTION
Definition: mtapi_ext.h:194
Job attributes.
Definition: mtapi_ext.h:192
mtapi_uint_t default_problem_size
stores MTAPI_JOB_DEFAULT_PROBLEM_SIZE_SIZE
Definition: mtapi_ext.h:196
void(* mtapi_ext_plugin_task_cancel_function_t)(MTAPI_IN mtapi_task_hndl_t task, MTAPI_OUT mtapi_status_t *status)
Represents a callback function that is called when a plugin task is about to be canceled.
Definition: mtapi_ext.h:73
void(* mtapi_ext_plugin_action_finalize_function_t)(MTAPI_IN mtapi_action_hndl_t action, MTAPI_OUT mtapi_status_t *status)
Represents a callback function that is called when a plugin action is about to be finalized...
Definition: mtapi_ext.h:86