11#ifndef ASRTC_PARAM_SERVER_H
12#define ASRTC_PARAM_SERVER_H
18#include "../asrtl/allocator.h"
19#include "../asrtl/chann.h"
20#include "../asrtl/flat_tree.h"
21#include "../asrtl/param_proto.h"
23typedef void ( *asrt_param_ready_ack_cb )(
void* ptr,
enum asrt_status status );
26enum asrt_param_server_pending
28 ASRT_PARAM_SERVER_PENDING_NONE = 0,
29 ASRT_PARAM_SERVER_PENDING_READY_ACK,
30 ASRT_PARAM_SERVER_PENDING_QUERY,
47 uint32_t max_msg_size;
50 enum asrt_param_server_pending pending;
53 uint32_t max_msg_size;
56 asrt_param_ready_ack_cb ack_cb;
63enum asrt_status asrt_param_server_init(
70void asrt_param_server_set_tree(
76enum asrt_status asrt_param_server_send_ready(
80 asrt_param_ready_ack_cb ack_cb,
Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee ...
Definition: allocator.h:28
node_id maps to blocks[node_id / node_capacity][node_id % node_capacity].
Definition: flat_tree.h:121
A node in a doubly-linked channel chain.
Definition: chann.h:122
Param server module — PARAM channel, controller side.
Definition: param.h:38
An outgoing message request placed in a module's send queue.
Definition: chann.h:64