55 #if !defined(__AMXB_BE_INTF_H__)
56 #define __AMXB_BE_INTF_H__
341 #define AMXB_BE_DISCOVER_DESCRIBE 0x0001
342 #define AMXB_BE_DISCOVER_LIST 0x0002
343 #define AMXB_BE_DISCOVER 0x0004
344 #define AMXB_BE_DISCOVER_RESOLVE 0x0008
417 typedef void*(* amxb_be_connect_fn_t) (
const char* host,
420 amxp_signal_mngr_t* sigmngr);
457 typedef void*(* amxb_be_listen_fn_t) (
const char* host,
460 amxp_signal_mngr_t* sigmngr);
489 typedef void*(* amxb_be_accept_fn_t) (
void*
const ctx,
490 amxp_signal_mngr_t* sigmngr);
1131 amxd_dm_t*
const dm);
1249 const char* search_path,
1294 const char* search_path,
1397 const char* search_path,
1400 amxc_var_t* ovalues,
1486 const char* search_path,
1554 const char* search_path,
1639 const char* search_path,
1646 const char* search_path,
1692 const char* search_path,
int(* amxb_be_wait_for_fn_t)(void *const ctx, const char *object)
bool(* amxb_be_has_fn_t)(void *const ctx, const char *object)
int(* amxb_be_describe_t)(void *const ctx, const char *object, const char *search_path, uint32_t flags, uint32_t access, amxc_var_t *retval, int timeout)
int(* amxb_be_list_t)(void *const ctx, const char *object, uint32_t flags, uint32_t access, amxb_request_t *request)
uint32_t(* amxb_be_capabilities_fn_t)(void *const ctx)
int(* amxb_be_read_raw_fn_t)(void *const ctx, void *buf, size_t count)
void(* amxb_be_free_fn_t)(void *const ctx)
Frees allocated memory for bus connection.
int(* amxb_be_register_fn_t)(void *const ctx, amxd_dm_t *const dm)
Registers an ambiorix data model to the bus system.
void *(* amxb_be_connect_fn_t)(const char *host, const char *port, const char *path, amxp_signal_mngr_t *sigmngr)
Opens a bus connection or creates a socket connection.
void(* amxb_be_free_invoke_fn_t)(amxb_invoke_t *invoke_ctx)
Frees the bus specific data from the invoke context.
int(* amxb_be_set_t)(void *const ctx, const char *object, const char *search_path, uint32_t flags, amxc_var_t *values, amxc_var_t *ovalues, uint32_t access, amxc_var_t *ret, int timeout)
Performs a set operation on one or more objects in the data model tree.
int(* amxb_be_set_config_t)(amxc_var_t *const configuration)
Passes a hash table variant containing configuration options to the back-end.
int(* amxb_be_async_invoke_fn_t)(void *const ctx, amxb_invoke_t *invoke_ctx, amxc_var_t *args, amxb_request_t *request)
Invokes a remote procedure call in the data model and return immediately without waiting for reply.
int(* amxb_be_close_request_fn_t)(void *const ctx, amxb_request_t *request)
Closes or cancels a pending asynchronous request.
int(* amxb_be_invoke_fn_t)(void *const ctx, amxb_invoke_t *invoke_ctx, amxc_var_t *args, amxb_request_t *request, int timeout)
Invokes a remote procedure call in the data model and waits for the reply.
int(* amxb_be_get_t)(void *const ctx, const char *object, const char *search_path, int32_t depth, uint32_t access, amxc_var_t *ret, int timeout)
Performs a get operation on one or more objects in the data model tree.
int(* amxb_be_add_t)(void *const ctx, const char *object, const char *search_path, uint32_t index, const char *name, amxc_var_t *values, uint32_t access, amxc_var_t *ret, int timeout)
Performs an add instance operation on one multi instance object in the data model tree.
int(* amxb_be_read_fn_t)(void *const ctx)
Read data from file descriptor and dispatch the request.
int(* amxb_be_get_supported_t)(void *const ctx, const char *object, const char *search_path, uint32_t flags, amxc_var_t *retval, int timeout)
Performs a get supported data model operation on a data model (sub-)tree.
int(* amxb_be_unsubscribe_fn_t)(void *const ctx, const char *object)
Removes a subscription for a specific object.
int(* amxb_be_disconnect_fn_t)(void *const ctx)
Closes a bus connection or disconnects a socket.
void *(* amxb_be_accept_fn_t)(void *const ctx, amxp_signal_mngr_t *sigmngr)
Accepts or drops an incoming connection.
int(* amxb_be_wait_request_fn_t)(void *const ctx, amxb_request_t *request, int timeout)
Waits until an asynchronous request has finished.
int(* amxb_be_del_t)(void *const ctx, const char *object, const char *search_path, uint32_t index, const char *name, uint32_t access, amxc_var_t *ret, int timeout)
Performs a delete instance operation on one object in the data model tree.
int(* amxb_be_get_fd_fn_t)(void *const ctx)
Get the file descriptor that represents the opened bus connection or the connected socket.
int(* amxb_be_new_invoke_fn_t)(amxb_invoke_t *invoke_ctx)
Updates the invoke context with bus specific data.
void *(* amxb_be_listen_fn_t)(const char *host, const char *port, const char *path, amxp_signal_mngr_t *sigmngr)
Creates a listen socket.
int(* amxb_be_get_filtered_t)(void *const ctx, const char *object, const char *search_path, const char *filter, int32_t depth, uint32_t access, amxc_var_t *ret, int timeout)
Performs a get operation on one or more objects in the data model tree.
int(* amxb_be_get_instances_t)(void *const ctx, const char *object, const char *search_path, int32_t depth, uint32_t access, amxc_var_t *ret, int timeout)
Performs a get instances data model operation on multi-instance objects.
int(* amxb_be_subscribe_fn_t)(void *const ctx, const char *object)
Creates a subscription for a specific object.
The back-end interface structure.
amxb_be_connect_fn_t connect
amxb_be_free_invoke_fn_t free_invoke
amxb_be_new_invoke_fn_t new_invoke
amxb_be_wait_for_fn_t wait_for
amxb_be_get_instances_t get_instances
amxb_be_get_supported_t get_supported
amxb_be_capabilities_fn_t capabilities
amxb_be_disconnect_fn_t disconnect
amxb_be_subscribe_fn_t subscribe
amxb_be_accept_fn_t accept
amxb_be_describe_t describe
amxb_be_listen_fn_t listen
amxb_be_read_raw_fn_t read_raw
amxb_be_close_request_fn_t close_request
amxb_be_register_fn_t register_dm
amxb_be_invoke_fn_t invoke
amxb_be_unsubscribe_fn_t unsubscribe
amxb_be_async_invoke_fn_t async_invoke
amxb_be_set_config_t set_config
amxb_be_wait_request_fn_t wait_request
amxb_be_get_fd_fn_t get_fd
amxb_be_get_filtered_t get_filtered