27#ifndef MODDEF_COMMAND_H
28#define MODDEF_COMMAND_H
33#ifndef MD_CMD_MAX_BINDINGS
34#define MD_CMD_MAX_BINDINGS 4
38#ifndef MD_CMD_MAX_WRITE_WORDS
39#define MD_CMD_MAX_WRITE_WORDS 123
43#ifndef MD_CMD_DEFAULT_INTERVAL_MS
44#define MD_CMD_DEFAULT_INTERVAL_MS 250
123 const uint8_t **p,
size_t *len);
md_err_t md_cmd_error(const md_cmd_exec_t *ex)
#define MD_CMD_MAX_BINDINGS
Definition command.h:34
struct md_cmd_binding md_cmd_binding_t
md_err_t md_cmd_begin(md_cmd_exec_t *ex, md_dev_t *dev, md_str_t command_id, const md_cmd_params_t *params, uint8_t *data_buf, size_t data_cap)
struct md_cmd_exec md_cmd_exec_t
struct md_cmd_params md_cmd_params_t
md_err_t md_cmd_result(const md_cmd_exec_t *ex, md_str_t field, md_value_t *out)
enum md_cmd_param_kind md_cmd_param_kind_t
struct md_cmd_param md_cmd_param_t
md_cmd_status
Definition command.h:47
@ MD_CMD_RUNNING
Definition command.h:48
@ MD_CMD_DONE
Definition command.h:50
@ MD_CMD_WAITING_POLL
Definition command.h:49
@ MD_CMD_ERROR
Definition command.h:51
enum md_cmd_status md_cmd_status_t
md_err_t md_cmd_result_data(const md_cmd_exec_t *ex, md_str_t field, const uint8_t **p, size_t *len)
md_cmd_status_t md_cmd_tick(md_cmd_exec_t *ex, uint32_t now_ms)
md_cmd_param_kind
Definition command.h:54
@ MD_CMD_PARAM_STR
Definition command.h:56
@ MD_CMD_PARAM_VALUE
Definition command.h:55
@ MD_CMD_PARAM_BYTES
Definition command.h:57
bool is_data
Definition command.h:75
md_value_t value
Definition command.h:76
uint32_t data_len
Definition command.h:78
uint32_t data_off
Definition command.h:77
md_str_t name
Definition command.h:74
md_cmd_binding_t bindings[MD_CMD_MAX_BINDINGS]
Definition command.h:95
bool in_poll
Definition command.h:89
md_cmd_params_t params
Definition command.h:84
uint32_t poll_due_ms
Definition command.h:93
uint32_t data_used
Definition command.h:100
md_bytes_t cmd_raw
Definition command.h:83
md_dev_t * dev
Definition command.h:82
uint32_t data_cap
Definition command.h:99
md_wire_t steps
Definition command.h:85
uint32_t poll_started_ms
Definition command.h:92
md_err_t err
Definition command.h:87
bool poll_first
Definition command.h:90
uint8_t n_bindings
Definition command.h:96
uint8_t status
Definition command.h:86
uint8_t * data
Definition command.h:98
md_bytes_t poll_raw
Definition command.h:91
md_value_t value
Definition command.h:63
md_str_t field
Definition command.h:61
md_bytes_t bytes
Definition command.h:65
uint8_t kind
Definition command.h:62
md_str_t str
Definition command.h:64
const md_cmd_param_t * items
Definition command.h:69
uint8_t n
Definition command.h:70