X-Git-Url: https://rtime.felk.cvut.cz/gitweb/frescor/forb.git/blobdiff_plain/538cadbd02d9d9b01547570d8e4ede8e31fa7650..a6448c3882b3f10dbcaefb722ec2ab492d992979:/src/exec_req.h diff --git a/src/exec_req.h b/src/exec_req.h index 57b17ba..b8e2147 100644 --- a/src/exec_req.h +++ b/src/exec_req.h @@ -62,6 +62,15 @@ #include #include #include "executor.h" +#include "request.h" + +/** + * Distinguishing execution methods of a request. + */ +enum FORB_EXEC_REQ_TYPE { + local, // no serialization used + remote +}; /** * Request for ::forb_executor_t. @@ -74,6 +83,8 @@ typedef struct forb_exec_req { unsigned method_index; /**< Mehotd number to be invoked on the object @a obj. */ FORB_CDR_Codec codec; /**< Bufffer with serialized request parameters. */ ul_list_node_t node; /**< Node for forb_executor_t::requests. */ + enum FORB_EXEC_REQ_TYPE request_type; /**< Execution method. */ + forb_request_t *input_request; /**< Input request data for the case of local invocation */ } forb_exec_req_t; UL_LIST_CUST_DEC(forb_exec_req_nolock, /* cust_prefix */