27 #ifndef EMBB_MTAPI_ACTION_H_ 28 #define EMBB_MTAPI_ACTION_H_ 30 #include <embb/mtapi/internal/check_status.h> 31 #include <embb/mtapi/action_attributes.h> 32 #include <embb/mtapi/job.h> 60 ) : handle_(other.handle_) {
73 handle_ = other.handle_;
105 mtapi_job_id_t job_id,
107 const void * node_local_data,
109 mtapi_size_t node_local_data_size,
110 mtapi_action_attributes_t
const * attributes
113 mtapi_status_t status;
115 node_local_data, node_local_data_size,
116 attributes, &status);
117 internal::CheckStatus(status);
120 mtapi_action_hndl_t handle_;
126 #endif // EMBB_MTAPI_ACTION_H_ Definition: lock_free_mpmc_queue.h:40
A singleton representing the MTAPI runtime.
Definition: node.h:70
Action(Action const &other)
Copies an Action.
Definition: action.h:58
Action()
Constructs an Action.
Definition: action.h:49
mtapi_action_hndl_t mtapi_action_create(const mtapi_job_id_t job_id, const mtapi_action_function_t function, const void *node_local_data, const mtapi_size_t node_local_data_size, const mtapi_action_attributes_t *attributes, mtapi_status_t *status)
This function creates a software action (hardware actions are considered to be pre-existent and do no...
void Delete()
Deletes an Action.
Definition: action.h:82
mtapi_action_hndl_t GetInternal() const
Returns the internal representation of this object.
Definition: action.h:93
void(* mtapi_action_function_t)(const void *args, mtapi_size_t args_size, void *result_buffer, mtapi_size_t result_buffer_size, const void *node_local_data, mtapi_size_t node_local_data_size, mtapi_task_context_t *context)
An action function is the executable software function that implements an action. ...
Definition: mtapi.h:941
Action & operator=(Action const &other)
Copies an Action.
Definition: action.h:70
Holds the actual worker function used to execute a Task.
Definition: action.h:42
void mtapi_action_delete(const mtapi_action_hndl_t action, const mtapi_timeout_t timeout, mtapi_status_t *status)
This function deletes a software action (Hardware actions exist perpetually and cannot be deleted)...