|
iceoryx2
C Bindings
|
#include <stdarg.h>#include <stdbool.h>#include <stddef.h>#include <stdint.h>#include <stdlib.h>Go to the source code of this file.
Macros | |
| #define | IOX2_C_BINDINGS_H |
| #define | IOX2_REPR_ALIGNED(n) |
| #define | IOX2_OK 0 |
| #define | IOX2_ATTRIBUTE_KEY_LENGTH 64 |
| #define | IOX2_ATTRIBUTE_VALUE_LENGTH 256 |
| #define | IOX2_MAX_ATTRIBUTES_PER_SERVICE 8 |
| #define | IOX2_NODE_NAME_LENGTH 128 |
| #define | IOX2_PORT_NAME_LENGTH 64 |
| #define | IOX2_SERVICE_NAME_LENGTH 255 |
| #define | IOX2_SERVICE_HASH_LENGTH 64 |
| #define | IOX2_TYPE_NAME_LENGTH 256 |
| #define | IOX2_MAX_BLACKBOARD_KEY_SIZE 64 |
| #define | IOX2_MAX_BLACKBOARD_KEY_ALIGNMENT 8 |
| #define | IOX2_IS_IPC_LISTENER_FD_BASED true |
| #define | IOX2_IS_LOCAL_LISTENER_FD_BASED true |
| #define IOX2_ATTRIBUTE_KEY_LENGTH 64 |
Definition at line 60 of file iceoryx2.h.
| #define IOX2_ATTRIBUTE_VALUE_LENGTH 256 |
Definition at line 62 of file iceoryx2.h.
| #define IOX2_C_BINDINGS_H |
Definition at line 21 of file iceoryx2.h.
| #define IOX2_IS_IPC_LISTENER_FD_BASED true |
Definition at line 80 of file iceoryx2.h.
| #define IOX2_IS_LOCAL_LISTENER_FD_BASED true |
Definition at line 82 of file iceoryx2.h.
| #define IOX2_MAX_ATTRIBUTES_PER_SERVICE 8 |
Definition at line 64 of file iceoryx2.h.
| #define IOX2_MAX_BLACKBOARD_KEY_ALIGNMENT 8 |
Definition at line 78 of file iceoryx2.h.
| #define IOX2_MAX_BLACKBOARD_KEY_SIZE 64 |
Definition at line 76 of file iceoryx2.h.
| #define IOX2_NODE_NAME_LENGTH 128 |
Definition at line 66 of file iceoryx2.h.
| #define IOX2_OK 0 |
This constant signals an successful function call
Definition at line 58 of file iceoryx2.h.
| #define IOX2_PORT_NAME_LENGTH 64 |
Definition at line 68 of file iceoryx2.h.
| #define IOX2_REPR_ALIGNED | ( | n | ) |
Definition at line 35 of file iceoryx2.h.
Referenced by __attribute__(), __attribute__(), and __attribute__().
| #define IOX2_SERVICE_HASH_LENGTH 64 |
Definition at line 72 of file iceoryx2.h.
| #define IOX2_SERVICE_NAME_LENGTH 255 |
Definition at line 70 of file iceoryx2.h.
| #define IOX2_TYPE_NAME_LENGTH 256 |
Definition at line 74 of file iceoryx2.h.
| typedef size_t c_size_t |
Definition at line 851 of file iceoryx2.h.
| typedef struct CFileDescriptor CFileDescriptor |
| typedef struct iox2_active_request_h_t* iox2_active_request_h |
The owning handle for iox2_active_request_t. Passing the handle to a function transfers the ownership.
Definition at line 827 of file iceoryx2.h.
| typedef const iox2_active_request_h* iox2_active_request_h_ref |
The non-owning handle for iox2_active_request_t. Passing the handle to a function does not transfer the ownership.
Definition at line 832 of file iceoryx2.h.
| typedef struct iox2_active_request_h_t iox2_active_request_h_t |
Definition at line 688 of file iceoryx2.h.
| typedef struct iox2_active_request_t iox2_active_request_t |
| typedef enum iox2_allocation_strategy_e iox2_allocation_strategy_e |
Describes generically an allocation strategy, meaning how the memory is increased when the available memory is insufficient.
| typedef const struct iox2_attribute_h_t* iox2_attribute_h_ref |
Definition at line 868 of file iceoryx2.h.
| typedef struct iox2_attribute_h_t iox2_attribute_h_t |
Definition at line 690 of file iceoryx2.h.
| typedef enum iox2_callback_progression_e(* iox2_attribute_set_get_callback) (const char *, iox2_callback_context) |
Definition at line 892 of file iceoryx2.h.
| typedef struct iox2_attribute_set_h_t* iox2_attribute_set_h |
The owning handle for iox2_attribute_set_t. Passing the handle to an function transfers the ownership.
Definition at line 887 of file iceoryx2.h.
| typedef struct iox2_attribute_set_h_t iox2_attribute_set_h_t |
Definition at line 692 of file iceoryx2.h.
| typedef const iox2_attribute_set_ptr_t* iox2_attribute_set_ptr |
The immutable pointer to the underlying AttributeSet
Definition at line 882 of file iceoryx2.h.
| typedef struct iox2_attribute_set_ptr_t iox2_attribute_set_ptr_t |
Definition at line 39 of file iceoryx2.h.
| typedef struct iox2_attribute_set_t iox2_attribute_set_t |
| typedef struct iox2_attribute_specifier_h_t* iox2_attribute_specifier_h |
The owning handle for iox2_attribute_specifier_t. Passing the handle to an function transfers the ownership.
Definition at line 908 of file iceoryx2.h.
| typedef const iox2_attribute_specifier_h* iox2_attribute_specifier_h_ref |
The non-owning handle for iox2_attribute_specifier_t. Passing the handle to an function does not transfers the ownership.
Definition at line 913 of file iceoryx2.h.
| typedef struct iox2_attribute_specifier_h_t iox2_attribute_specifier_h_t |
Definition at line 694 of file iceoryx2.h.
| typedef struct iox2_attribute_specifier_t iox2_attribute_specifier_t |
| typedef struct iox2_attribute_verifier_h_t* iox2_attribute_verifier_h |
The owning handle for iox2_attribute_verifier_t. Passing the handle to an function transfers the ownership.
Definition at line 927 of file iceoryx2.h.
| typedef const iox2_attribute_verifier_h* iox2_attribute_verifier_h_ref |
The non-owning handle for iox2_attribute_verifier_t. Passing the handle to an function does not transfers the ownership.
Definition at line 932 of file iceoryx2.h.
| typedef struct iox2_attribute_verifier_h_t iox2_attribute_verifier_h_t |
Definition at line 696 of file iceoryx2.h.
| typedef struct iox2_attribute_verifier_t iox2_attribute_verifier_t |
| typedef enum iox2_backpressure_action_e iox2_backpressure_action_e |
Defines the action that shall be take when an a data cannot be delivered.
| typedef enum iox2_backpressure_action_e(* iox2_backpressure_handler) (iox2_backpressure_info_h_ref, iox2_callback_context) |
The backpressure handler signature
[iox2_backpressure_action_e] the selected action to handle the incident
Definition at line 1473 of file iceoryx2.h.
| typedef struct iox2_backpressure_info_h iox2_backpressure_info_h |
Definition at line 698 of file iceoryx2.h.
| typedef const struct iox2_backpressure_info_h* iox2_backpressure_info_h_ref |
Definition at line 934 of file iceoryx2.h.
| typedef enum iox2_backpressure_strategy_e iox2_backpressure_strategy_e |
| typedef enum iox2_blackboard_open_error_e iox2_blackboard_open_error_e |
| typedef void* iox2_callback_context |
An alias to a void * which can be used to pass arbitrary data to the callback
Definition at line 892 of file iceoryx2.h.
| typedef enum iox2_callback_progression_e iox2_callback_progression_e |
| typedef struct iox2_cleanup_state_t iox2_cleanup_state_t |
Returned by iox2_node_try_cleanup_dead_nodes(). Contains the cleanup report of the call and contains the number of dead nodes that were successfully cleaned up and how many could not be cleaned up. This does not have to be an error, for instance when the current process does not have the permission to access the corresponding resources.
| typedef enum iox2_client_create_error_e iox2_client_create_error_e |
| typedef const iox2_client_details_ptr_t* iox2_client_details_ptr |
The immutable pointer to the underlying ClientDetails
Definition at line 1005 of file iceoryx2.h.
| typedef struct iox2_client_details_ptr_t iox2_client_details_ptr_t |
Definition at line 40 of file iceoryx2.h.
| typedef struct iox2_client_h_t* iox2_client_h |
The owning handle for iox2_client_t. Passing the handle to a function transfers the ownership.
Definition at line 943 of file iceoryx2.h.
| typedef const iox2_client_h* iox2_client_h_ref |
The non-owning handle for iox2_client_t. Passing the handle to a function does not transfer the ownership.
Definition at line 948 of file iceoryx2.h.
| typedef struct iox2_client_h_t iox2_client_h_t |
Definition at line 700 of file iceoryx2.h.
| typedef struct iox2_client_t iox2_client_t |
| typedef enum iox2_config_creation_error_e iox2_config_creation_error_e |
Failures occurring while creating a new [iox2_config_t] object with [iox2_config_from_file()].
| typedef struct iox2_config_h_t* iox2_config_h |
The owning handle for iox2_config_t. Passing the handle to an function transfers the ownership.
Definition at line 1020 of file iceoryx2.h.
| typedef const iox2_config_h* iox2_config_h_ref |
The non-owning handle for iox2_config_t. Passing the handle to an function does not transfers the ownership.
Definition at line 1040 of file iceoryx2.h.
| typedef struct iox2_config_h_t iox2_config_h_t |
Definition at line 702 of file iceoryx2.h.
| typedef const iox2_config_ptr_t* iox2_config_ptr |
The immutable pointer to the underlying Config
Definition at line 1015 of file iceoryx2.h.
| typedef struct iox2_config_ptr_t iox2_config_ptr_t |
Definition at line 41 of file iceoryx2.h.
| typedef struct iox2_config_t iox2_config_t |
Contains the iceoryx2 config
| typedef enum iox2_connection_failure_e iox2_connection_failure_e |
| typedef enum iox2_degradation_action_e iox2_degradation_action_e |
Defines the action that shall be take when an degradation is detected. This can happen when a sample cannot be delivered, or when the system is corrupted and files are modified by non-iceoryx2 instances. Is used as return value of the degradation handler to define a custom behavior.
| typedef enum iox2_degradation_cause_e iox2_degradation_cause_e |
Defines the cause of a degradation and is a parameter of the degradation handler.
| typedef enum iox2_degradation_action_e(* iox2_degradation_handler) (enum iox2_degradation_cause_e, iox2_degradation_info_h_ref, iox2_callback_context) |
The degradation handler signature
[iox2_degradation_action_e] the selected action to handle the degradation
Definition at line 1473 of file iceoryx2.h.
| typedef struct iox2_degradation_info_h iox2_degradation_info_h |
Definition at line 704 of file iceoryx2.h.
| typedef const struct iox2_degradation_info_h* iox2_degradation_info_h_ref |
Definition at line 1042 of file iceoryx2.h.
| typedef enum iox2_entry_handle_error_e iox2_entry_handle_error_e |
| typedef struct iox2_entry_handle_h_t* iox2_entry_handle_h |
The owning handle for iox2_entry_handle_t. Passing the handle to an function transfers the ownership.
Definition at line 1047 of file iceoryx2.h.
| typedef const iox2_entry_handle_h* iox2_entry_handle_h_ref |
The non-owning handle for iox2_entry_handle_t. Passing the handle to an function does not transfers the ownership.
Definition at line 1052 of file iceoryx2.h.
| typedef struct iox2_entry_handle_h_t iox2_entry_handle_h_t |
Definition at line 706 of file iceoryx2.h.
| typedef struct iox2_entry_handle_mut_h_t* iox2_entry_handle_mut_h |
The owning handle for iox2_entry_handle_mut_t. Passing the handle to a function transfers the ownership.
Definition at line 1061 of file iceoryx2.h.
| typedef const iox2_entry_handle_mut_h* iox2_entry_handle_mut_h_ref |
The non-owning handle for iox2_entry_handle_mut_t. Passing the handle to a function does not transfer the ownership.
Definition at line 1081 of file iceoryx2.h.
| typedef struct iox2_entry_handle_mut_h_t iox2_entry_handle_mut_h_t |
Definition at line 708 of file iceoryx2.h.
| typedef struct iox2_entry_handle_mut_t iox2_entry_handle_mut_t |
| typedef struct iox2_entry_handle_t iox2_entry_handle_t |
| typedef struct iox2_entry_value_uninit_h_t* iox2_entry_value_uninit_h |
The owning handle for iox2_entry_value_uninit_t. Passing the handle to a function transfers the ownership.
Definition at line 1076 of file iceoryx2.h.
| typedef const iox2_entry_value_uninit_h* iox2_entry_value_uninit_h_ref |
The non-owning handle for iox2_entry_value_uninit_t. Passing the handle to a function does not transfer the ownership.
Definition at line 1086 of file iceoryx2.h.
| typedef struct iox2_entry_value_uninit_h_t iox2_entry_value_uninit_h_t |
Definition at line 710 of file iceoryx2.h.
| typedef struct iox2_entry_value_uninit_t iox2_entry_value_uninit_t |
| typedef struct iox2_event_id_t iox2_event_id_t |
| typedef struct iox2_file_descriptor_h_t* iox2_file_descriptor_h |
The owning handle for iox2_file_descriptor_t. Passing the handle to an function transfers the ownership.
Definition at line 1111 of file iceoryx2.h.
| typedef struct iox2_file_descriptor_h_t iox2_file_descriptor_h_t |
Definition at line 712 of file iceoryx2.h.
| typedef const struct CFileDescriptor* iox2_file_descriptor_ptr |
The immutable pointer to the underlying FileDescriptor
Definition at line 1106 of file iceoryx2.h.
| typedef struct iox2_file_descriptor_t iox2_file_descriptor_t |
| typedef enum iox2_callback_progression_e(* iox2_list_clients_callback) (iox2_callback_context, iox2_client_details_ptr) |
The callback for [iox2_port_factory_request_response_dynamic_config_list_clients()]
Returns a [iox2_callback_progression_e]
Definition at line 1842 of file iceoryx2.h.
| typedef enum iox2_callback_progression_e(* iox2_list_listeners_callback) (iox2_callback_context, iox2_listener_details_ptr) |
The callback for [iox2_port_factory_event_dynamic_config_list_listeners()]
Returns a [iox2_callback_progression_e]
Definition at line 1578 of file iceoryx2.h.
| typedef enum iox2_callback_progression_e(* iox2_list_notifiers_callback) (iox2_callback_context, iox2_notifier_details_ptr) |
The callback for [iox2_port_factory_event_dynamic_config_list_notifiers()]
Returns a [iox2_callback_progression_e]
Definition at line 1578 of file iceoryx2.h.
| typedef enum iox2_callback_progression_e(* iox2_list_publishers_callback) (iox2_callback_context, iox2_publisher_details_ptr) |
The callback for [iox2_port_factory_pub_sub_dynamic_config_list_publishers()]
Returns a [iox2_callback_progression_e]
Definition at line 1720 of file iceoryx2.h.
| typedef enum iox2_callback_progression_e(* iox2_list_readers_callback) (iox2_callback_context, iox2_reader_details_ptr) |
The callback for [iox2_port_factory_blackboard_dynamic_config_list_readers()]
Returns a [iox2_callback_progression_e]
Definition at line 1417 of file iceoryx2.h.
| typedef enum iox2_callback_progression_e(* iox2_list_servers_callback) (iox2_callback_context, iox2_server_details_ptr) |
The callback for [iox2_port_factory_request_response_dynamic_config_list_servers()]
Returns a [iox2_callback_progression_e]
Definition at line 1842 of file iceoryx2.h.
| typedef enum iox2_callback_progression_e(* iox2_list_subscribers_callback) (iox2_callback_context, iox2_subscriber_details_ptr) |
The callback for [iox2_port_factory_pub_sub_dynamic_config_list_subscribers()]
Returns a [iox2_callback_progression_e]
Definition at line 1702 of file iceoryx2.h.
| typedef enum iox2_callback_progression_e(* iox2_list_writers_callback) (iox2_callback_context, iox2_writer_details_ptr) |
The callback for [iox2_port_factory_blackboard_dynamic_config_list_writers()]
Returns a [iox2_callback_progression_e]
Definition at line 1434 of file iceoryx2.h.
| typedef enum iox2_listener_create_error_e iox2_listener_create_error_e |
| typedef const iox2_listener_details_ptr_t* iox2_listener_details_ptr |
The immutable pointer to the underlying ListenerDetails
Definition at line 1154 of file iceoryx2.h.
| typedef struct iox2_listener_details_ptr_t iox2_listener_details_ptr_t |
Definition at line 42 of file iceoryx2.h.
| typedef struct iox2_listener_h_t* iox2_listener_h |
The owning handle for iox2_listener_t. Passing the handle to an function transfers the ownership.
Definition at line 1125 of file iceoryx2.h.
| typedef const iox2_listener_h* iox2_listener_h_ref |
The non-owning handle for iox2_listener_t. Passing the handle to an function does not transfers the ownership.
Definition at line 1130 of file iceoryx2.h.
| typedef struct iox2_listener_h_t iox2_listener_h_t |
Definition at line 714 of file iceoryx2.h.
| typedef struct iox2_listener_t iox2_listener_t |
| typedef void(* iox2_listener_wait_all_callback) (const struct iox2_event_id_t *, uint64_t, iox2_callback_context) |
Definition at line 1132 of file iceoryx2.h.
| typedef enum iox2_listener_wait_error_e iox2_listener_wait_error_e |
| typedef enum iox2_loan_error_e iox2_loan_error_e |
| typedef void(* iox2_log_callback) (enum iox2_log_level_e, const char *, const char *) |
The custom log callback for [iox2_set_logger]
Definition at line 1165 of file iceoryx2.h.
| typedef enum iox2_log_level_e iox2_log_level_e |
| typedef struct iox2_message_type_details_t iox2_message_type_details_t |
| typedef enum iox2_messaging_pattern_e iox2_messaging_pattern_e |
| typedef struct iox2_name_h_t iox2_name_h_t |
Definition at line 716 of file iceoryx2.h.
| typedef struct iox2_node_builder_h_t* iox2_node_builder_h |
The owning handle for iox2_node_builder_t. Passing the handle to an function transfers the ownership.
Definition at line 1268 of file iceoryx2.h.
| typedef const iox2_node_builder_h* iox2_node_builder_h_ref |
The non-owning handle for iox2_node_builder_t. Passing the handle to an function does not transfers the ownership.
Definition at line 1282 of file iceoryx2.h.
| typedef struct iox2_node_builder_h_t iox2_node_builder_h_t |
Definition at line 718 of file iceoryx2.h.
| typedef struct iox2_node_builder_t iox2_node_builder_t |
| typedef enum iox2_node_cleanup_failure_e iox2_node_cleanup_failure_e |
Failures of [iox2_dead_node_try_remove_stale_resources()] that occur when the stale resources of a dead node are removed.
| typedef enum iox2_node_creation_failure_e iox2_node_creation_failure_e |
| typedef struct iox2_name_h_t* iox2_node_h |
The owning handle for iox2_node_t. Passing the handle to an function transfers the ownership.
Definition at line 1175 of file iceoryx2.h.
| typedef const iox2_node_h* iox2_node_h_ref |
The non-owning handle for iox2_node_t. Passing the handle to an function does not transfers the ownership.
Definition at line 1180 of file iceoryx2.h.
| typedef enum iox2_callback_progression_e(* iox2_node_list_callback) (enum iox2_node_state_e, iox2_unique_node_id_ptr, const char *, iox2_node_name_ptr, iox2_config_ptr, iox2_callback_context) |
The callback for [iox2_node_list]
Returns a [iox2_callback_progression_e]
Definition at line 1195 of file iceoryx2.h.
| typedef enum iox2_node_list_failure_e iox2_node_list_failure_e |
The failures that can occur when a list of node states is created with [iox2_node_list()].
| typedef struct iox2_node_name_h_t* iox2_node_name_h |
The owning handle for iox2_node_name_t. Passing the handle to an function transfers the ownership.
Definition at line 1306 of file iceoryx2.h.
| typedef struct iox2_node_name_h_t iox2_node_name_h_t |
Definition at line 720 of file iceoryx2.h.
| typedef const iox2_node_name_ptr_t* iox2_node_name_ptr |
The immutable pointer to the underlying NodeName
Definition at line 1170 of file iceoryx2.h.
| typedef struct iox2_node_name_ptr_t iox2_node_name_ptr_t |
Definition at line 44 of file iceoryx2.h.
| typedef struct iox2_node_name_t iox2_node_name_t |
| typedef enum iox2_node_state_e iox2_node_state_e |
| typedef struct iox2_node_t iox2_node_t |
| typedef enum iox2_node_wait_failure_e iox2_node_wait_failure_e |
| typedef enum iox2_notifier_create_error_e iox2_notifier_create_error_e |
| typedef const iox2_notifier_details_ptr_t* iox2_notifier_details_ptr |
The immutable pointer to the underlying NotifierDetails
Definition at line 1338 of file iceoryx2.h.
| typedef struct iox2_notifier_details_ptr_t iox2_notifier_details_ptr_t |
Definition at line 45 of file iceoryx2.h.
| typedef struct iox2_notifier_h_t* iox2_notifier_h |
The owning handle for iox2_notifier_t. Passing the handle to an function transfers the ownership.
Definition at line 1311 of file iceoryx2.h.
| typedef const iox2_notifier_h* iox2_notifier_h_ref |
The non-owning handle for iox2_notifier_t. Passing the handle to an function does not transfers the ownership.
Definition at line 1316 of file iceoryx2.h.
| typedef struct iox2_notifier_h_t iox2_notifier_h_t |
Definition at line 722 of file iceoryx2.h.
| typedef enum iox2_notifier_notify_error_e iox2_notifier_notify_error_e |
| typedef struct iox2_notifier_t iox2_notifier_t |
| typedef struct iox2_pending_response_h_t* iox2_pending_response_h |
The owning handle for iox2_pending_response_t. Passing the handle to a function transfers the ownership.
Definition at line 1000 of file iceoryx2.h.
| typedef const iox2_pending_response_h* iox2_pending_response_h_ref |
The non-owning handle for iox2_pending_response_t. Passing the handle to a function does not transfer the ownership.
Definition at line 1343 of file iceoryx2.h.
| typedef struct iox2_pending_response_h_t iox2_pending_response_h_t |
Definition at line 724 of file iceoryx2.h.
| typedef struct iox2_pending_response_t iox2_pending_response_t |
| typedef struct iox2_port_factory_blackboard_h_t* iox2_port_factory_blackboard_h |
The owning handle for iox2_port_factory_blackboard_t. Passing the handle to a function transfers the ownership.
Definition at line 1363 of file iceoryx2.h.
| typedef const iox2_port_factory_blackboard_h* iox2_port_factory_blackboard_h_ref |
The non-owning handle for iox2_port_factory_blackboard_t. Passing the handle to a function does not transfer the ownership.
Definition at line 1368 of file iceoryx2.h.
| typedef struct iox2_port_factory_blackboard_h_t iox2_port_factory_blackboard_h_t |
Definition at line 726 of file iceoryx2.h.
| typedef enum iox2_callback_progression_e(* iox2_port_factory_blackboard_list_keys_callback) (const void *, iox2_callback_context) |
Definition at line 1434 of file iceoryx2.h.
| typedef struct iox2_port_factory_blackboard_t iox2_port_factory_blackboard_t |
The owning handle for iox2_port_factory_client_builder_t. Passing the handle to a function transfers the ownership.
Definition at line 1454 of file iceoryx2.h.
The non-owning handle for iox2_port_factory_client_builder_t. Passing the handle to a function does not transfer the ownership.
Definition at line 1459 of file iceoryx2.h.
Definition at line 728 of file iceoryx2.h.
| typedef struct iox2_port_factory_client_builder_t iox2_port_factory_client_builder_t |
| typedef struct iox2_port_factory_event_h_t* iox2_port_factory_event_h |
The owning handle for iox2_port_factory_event_t. Passing the handle to an function transfers the ownership.
Definition at line 1533 of file iceoryx2.h.
| typedef const iox2_port_factory_event_h* iox2_port_factory_event_h_ref |
The non-owning handle for iox2_port_factory_event_t. Passing the handle to an function does not transfers the ownership.
Definition at line 1538 of file iceoryx2.h.
| typedef struct iox2_port_factory_event_h_t iox2_port_factory_event_h_t |
Definition at line 730 of file iceoryx2.h.
| typedef struct iox2_port_factory_event_t iox2_port_factory_event_t |
The owning handle for iox2_port_factory_listener_builder_t. Passing the handle to an function transfers the ownership.
Definition at line 1574 of file iceoryx2.h.
The non-owning handle for iox2_port_factory_listener_builder_t. Passing the handle to an function does not transfers the ownership.
Definition at line 1615 of file iceoryx2.h.
Definition at line 732 of file iceoryx2.h.
| typedef struct iox2_port_factory_listener_builder_t iox2_port_factory_listener_builder_t |
The owning handle for iox2_port_factory_notifier_builder_t. Passing the handle to an function transfers the ownership.
Definition at line 1559 of file iceoryx2.h.
The non-owning handle for iox2_port_factory_notifier_builder_t. Passing the handle to an function does not transfers the ownership.
Definition at line 1630 of file iceoryx2.h.
Definition at line 734 of file iceoryx2.h.
| typedef struct iox2_port_factory_notifier_builder_t iox2_port_factory_notifier_builder_t |
| typedef struct iox2_port_factory_pub_sub_h_t* iox2_port_factory_pub_sub_h |
The owning handle for iox2_port_factory_pub_sub_t. Passing the handle to an function transfers the ownership.
Definition at line 1650 of file iceoryx2.h.
| typedef const iox2_port_factory_pub_sub_h* iox2_port_factory_pub_sub_h_ref |
The non-owning handle for iox2_port_factory_pub_sub_t. Passing the handle to an function does not transfers the ownership.
Definition at line 1655 of file iceoryx2.h.
| typedef struct iox2_port_factory_pub_sub_h_t iox2_port_factory_pub_sub_h_t |
Definition at line 736 of file iceoryx2.h.
| typedef struct iox2_port_factory_pub_sub_t iox2_port_factory_pub_sub_t |
The owning handle for iox2_port_factory_publisher_builder_t. Passing the handle to an function transfers the ownership.
Definition at line 1645 of file iceoryx2.h.
The non-owning handle for iox2_port_factory_publisher_builder_t. Passing the handle to an function does not transfers the ownership.
Definition at line 1738 of file iceoryx2.h.
Definition at line 738 of file iceoryx2.h.
| typedef struct iox2_port_factory_publisher_builder_t iox2_port_factory_publisher_builder_t |
The owning handle for iox2_port_factory_reader_builder_t. Passing the handle to a function transfers the ownership.
Definition at line 1388 of file iceoryx2.h.
The non-owning handle for iox2_port_factory_reader_builder_t. Passing the handle to a function does not transfer the ownership.
Definition at line 1772 of file iceoryx2.h.
Definition at line 740 of file iceoryx2.h.
| typedef struct iox2_port_factory_reader_builder_t iox2_port_factory_reader_builder_t |
The owning handle for iox2_port_factory_request_response_t. Passing the handle to a function transfers the ownership.
Definition at line 1797 of file iceoryx2.h.
The non-owning handle for iox2_port_factory_request_response_t. Passing the handle to a function does not transfer the ownership.
Definition at line 1802 of file iceoryx2.h.
Definition at line 742 of file iceoryx2.h.
| typedef struct iox2_port_factory_request_response_t iox2_port_factory_request_response_t |
The owning handle for iox2_port_factory_server_builder_t. Passing the handle to a function transfers the ownership.
Definition at line 1792 of file iceoryx2.h.
The non-owning handle for iox2_port_factory_server_builder_t. Passing the handle to a function does not transfer the ownership.
Definition at line 1871 of file iceoryx2.h.
Definition at line 744 of file iceoryx2.h.
| typedef struct iox2_port_factory_server_builder_t iox2_port_factory_server_builder_t |
The owning handle for iox2_port_factory_subscriber_builder_t. Passing the handle to an function transfers the ownership.
Definition at line 1670 of file iceoryx2.h.
The non-owning handle for iox2_port_factory_subscriber_builder_t. Passing the handle to an function does not transfers the ownership.
Definition at line 1905 of file iceoryx2.h.
Definition at line 746 of file iceoryx2.h.
| typedef struct iox2_port_factory_subscriber_builder_t iox2_port_factory_subscriber_builder_t |
The owning handle for iox2_port_factory_writer_builder_t. Passing the handle to a function transfers the ownership.
Definition at line 1373 of file iceoryx2.h.
The non-owning handle for iox2_port_factory_writer_builder_t. Passing the handle to a function does not transfer the ownership.
Definition at line 1925 of file iceoryx2.h.
Definition at line 748 of file iceoryx2.h.
| typedef struct iox2_port_factory_writer_builder_t iox2_port_factory_writer_builder_t |
| typedef struct iox2_port_name_h_t* iox2_port_name_h |
The owning handle for iox2_port_name_t. Passing the handle to an function transfers the ownership.
Definition at line 1954 of file iceoryx2.h.
| typedef struct iox2_port_name_h_t iox2_port_name_h_t |
Definition at line 750 of file iceoryx2.h.
| typedef const iox2_port_name_ptr_t* iox2_port_name_ptr |
The immutable pointer to the underlying PortName
Definition at line 970 of file iceoryx2.h.
| typedef struct iox2_port_name_ptr_t iox2_port_name_ptr_t |
Definition at line 46 of file iceoryx2.h.
| typedef struct iox2_port_name_t iox2_port_name_t |
| typedef size_t(* iox2_preallocated_requests_override) (size_t, iox2_callback_context) |
The callback for [iox2_port_factory_client_builder_override_requests_preallocation]
Returns the override value of preallocated requests. The return value is clamped between 1 and the worst case number of preallocated requests (number_of_preallocated_requests).
Definition at line 1473 of file iceoryx2.h.
| typedef size_t(* iox2_preallocated_responses_override) (size_t, iox2_callback_context) |
The callback for [iox2_port_factory_server_builder_override_responses_preallocation]
Returns the override value of preallocated responses. The return value is clamped between 1 and the worst case number of preallocated responses (number_of_preallocated_responses).
Definition at line 1885 of file iceoryx2.h.
| typedef size_t(* iox2_preallocated_samples_override) (size_t, iox2_callback_context) |
The callback for [iox2_port_factory_publisher_builder_override_samples_preallocation]
Returns the override value of preallocated samples. The return value is clamped between 1 and the worst case number of preallocated samples (number_of_preallocated_sample).
Definition at line 1752 of file iceoryx2.h.
| typedef struct iox2_publish_subscribe_header_h_t* iox2_publish_subscribe_header_h |
The owning handle for [iox2_publish_subscribe_header_t]. Passing the handle to an function transfers the ownership.
Definition at line 1959 of file iceoryx2.h.
The non-owning handle for [iox2_publish_subscribe_header_t]. Passing the handle to an function does not transfers the ownership.
Definition at line 1964 of file iceoryx2.h.
Definition at line 752 of file iceoryx2.h.
| typedef struct iox2_publish_subscribe_header_t iox2_publish_subscribe_header_t |
| typedef const iox2_publisher_details_ptr_t* iox2_publisher_details_ptr |
The immutable pointer to the underlying PublisherDetails
Definition at line 1720 of file iceoryx2.h.
| typedef struct iox2_publisher_details_ptr_t iox2_publisher_details_ptr_t |
Definition at line 47 of file iceoryx2.h.
| typedef struct iox2_publisher_h_t* iox2_publisher_h |
The owning handle for iox2_publisher_t. Passing the handle to an function transfers the ownership.
Definition at line 1767 of file iceoryx2.h.
| typedef const iox2_publisher_h* iox2_publisher_h_ref |
The non-owning handle for iox2_publisher_t. Passing the handle to an function does not transfers the ownership.
Definition at line 1986 of file iceoryx2.h.
| typedef struct iox2_publisher_h_t iox2_publisher_h_t |
Definition at line 754 of file iceoryx2.h.
| typedef struct iox2_publisher_t iox2_publisher_t |
| typedef enum iox2_reader_create_error_e iox2_reader_create_error_e |
| typedef const iox2_reader_details_ptr_t* iox2_reader_details_ptr |
The immutable pointer to the underlying ReaderDetails
Definition at line 1417 of file iceoryx2.h.
| typedef struct iox2_reader_details_ptr_t iox2_reader_details_ptr_t |
Definition at line 48 of file iceoryx2.h.
| typedef struct iox2_reader_h_t* iox2_reader_h |
The owning handle for iox2_reader_t. Passing the handle to a function transfers the ownership.
Definition at line 1787 of file iceoryx2.h.
| typedef const iox2_reader_h* iox2_reader_h_ref |
The non-owning handle for iox2_reader_t. Passing the handle to a function does not transfer the ownership.
Definition at line 2006 of file iceoryx2.h.
| typedef struct iox2_reader_h_t iox2_reader_h_t |
Definition at line 756 of file iceoryx2.h.
| typedef struct iox2_reader_t iox2_reader_t |
| typedef enum iox2_receive_error_e iox2_receive_error_e |
| typedef struct iox2_request_header_h_t* iox2_request_header_h |
The owning handle for [iox2_request_header_t]. Passing the handle to a function transfers the ownership.
Definition at line 849 of file iceoryx2.h.
| typedef const iox2_request_header_h* iox2_request_header_h_ref |
The non-owning handle for [iox2_request_header_t]. Passing the handle to a function does not transfer the ownership.
Definition at line 2038 of file iceoryx2.h.
| typedef struct iox2_request_header_h_t iox2_request_header_h_t |
Definition at line 758 of file iceoryx2.h.
| typedef struct iox2_request_header_t iox2_request_header_t |
| typedef struct iox2_request_mut_h_t* iox2_request_mut_h |
The owning handle for iox2_request_mut_t. Passing the handle to a function transfers the ownership.
Definition at line 985 of file iceoryx2.h.
| typedef const iox2_request_mut_h* iox2_request_mut_h_ref |
The non-owning handle for iox2_request_mut_t. Passing the handle to a function does not transfer the ownership.
Definition at line 2043 of file iceoryx2.h.
| typedef struct iox2_request_mut_h_t iox2_request_mut_h_t |
Definition at line 760 of file iceoryx2.h.
| typedef struct iox2_request_mut_t iox2_request_mut_t |
| typedef enum iox2_request_response_open_or_create_error_e iox2_request_response_open_or_create_error_e |
| typedef enum iox2_request_send_error_e iox2_request_send_error_e |
| typedef struct iox2_resizable_memory_publish_subscribe_h_t* iox2_resizable_memory_publish_subscribe_h |
The owning handle for iox2_resizable_memory_publish_subscribe_t. Passing the handle to an function transfers the ownership.
Definition at line 2063 of file iceoryx2.h.
| typedef const iox2_resizable_memory_publish_subscribe_h* iox2_resizable_memory_publish_subscribe_h_ref |
The non-owning handle for iox2_resizable_memory_publish_subscribe_t. Passing the handle to an function does not transfers the ownership.
Definition at line 2068 of file iceoryx2.h.
| typedef struct iox2_resizable_memory_publish_subscribe_h_t iox2_resizable_memory_publish_subscribe_h_t |
Definition at line 762 of file iceoryx2.h.
| typedef struct iox2_resizable_memory_publish_subscribe_t iox2_resizable_memory_publish_subscribe_t |
| typedef struct iox2_resizable_memory_request_h_t* iox2_resizable_memory_request_h |
The owning handle for iox2_resizable_memory_request_t. Passing the handle to an function transfers the ownership.
Definition at line 2058 of file iceoryx2.h.
The non-owning handle for iox2_resizable_memory_request_t. Passing the handle to an function does not transfers the ownership.
Definition at line 2073 of file iceoryx2.h.
Definition at line 764 of file iceoryx2.h.
| typedef struct iox2_resizable_memory_request_t iox2_resizable_memory_request_t |
| typedef struct iox2_resizable_memory_response_h_t* iox2_resizable_memory_response_h |
The owning handle for iox2_resizable_memory_response_t. Passing the handle to an function transfers the ownership.
Definition at line 2078 of file iceoryx2.h.
The non-owning handle for iox2_resizable_memory_response_t. Passing the handle to an function does not transfers the ownership.
Definition at line 2083 of file iceoryx2.h.
Definition at line 766 of file iceoryx2.h.
| typedef struct iox2_resizable_memory_response_t iox2_resizable_memory_response_t |
| typedef struct iox2_response_h_t* iox2_response_h |
The owning handle for iox2_response_t. Passing the handle to a function transfers the ownership.
Definition at line 1358 of file iceoryx2.h.
| typedef const iox2_response_h* iox2_response_h_ref |
The non-owning handle for iox2_response_t. Passing the handle to a function does not transfer the ownership.
Definition at line 2088 of file iceoryx2.h.
| typedef struct iox2_response_h_t iox2_response_h_t |
Definition at line 768 of file iceoryx2.h.
| typedef struct iox2_response_header_h_t* iox2_response_header_h |
The owning handle for [iox2_response_header_t]. Passing the handle to a function transfers the ownership.
Definition at line 2105 of file iceoryx2.h.
| typedef const iox2_response_header_h* iox2_response_header_h_ref |
The non-owning handle for [iox2_response_header_t]. Passing the handle to a function does not transfer the ownership.
Definition at line 2110 of file iceoryx2.h.
| typedef struct iox2_response_header_h_t iox2_response_header_h_t |
Definition at line 770 of file iceoryx2.h.
| typedef struct iox2_response_header_t iox2_response_header_t |
| typedef struct iox2_response_mut_h_t* iox2_response_mut_h |
The owning handle for iox2_response_mut_t. Passing the handle to a function transfer the ownership.
Definition at line 866 of file iceoryx2.h.
| typedef const iox2_response_mut_h* iox2_response_mut_h_ref |
The non-owning handle for iox2_response_mut_t. Passing the handle to a function does not transfer the ownership.
Definition at line 2132 of file iceoryx2.h.
| typedef struct iox2_response_mut_h_t iox2_response_mut_h_t |
Definition at line 772 of file iceoryx2.h.
| typedef struct iox2_response_mut_t iox2_response_mut_t |
| typedef struct iox2_response_t iox2_response_t |
| typedef struct iox2_sample_h_t* iox2_sample_h |
The owning handle for iox2_sample_t. Passing the handle to an function transfers the ownership.
Definition at line 2147 of file iceoryx2.h.
| typedef const iox2_sample_h* iox2_sample_h_ref |
The non-owning handle for iox2_sample_t. Passing the handle to an function does not transfers the ownership.
Definition at line 2152 of file iceoryx2.h.
| typedef struct iox2_sample_h_t iox2_sample_h_t |
Definition at line 774 of file iceoryx2.h.
| typedef struct iox2_sample_mut_h_t* iox2_sample_mut_h |
The owning handle for iox2_sample_mut_t. Passing the handle to an function transfers the ownership.
Definition at line 2001 of file iceoryx2.h.
| typedef const iox2_sample_mut_h* iox2_sample_mut_h_ref |
The non-owning handle for iox2_sample_mut_t. Passing the handle to an function does not transfers the ownership.
Definition at line 2169 of file iceoryx2.h.
| typedef struct iox2_sample_mut_h_t iox2_sample_mut_h_t |
Definition at line 776 of file iceoryx2.h.
| typedef struct iox2_sample_mut_t iox2_sample_mut_t |
| typedef struct iox2_sample_t iox2_sample_t |
| typedef enum iox2_semantic_string_error_e iox2_semantic_string_error_e |
| typedef enum iox2_send_error_e iox2_send_error_e |
| typedef enum iox2_server_create_error_e iox2_server_create_error_e |
| typedef const iox2_server_details_ptr_t* iox2_server_details_ptr |
The immutable pointer to the underlying ServerDetails
Definition at line 1842 of file iceoryx2.h.
| typedef struct iox2_server_details_ptr_t iox2_server_details_ptr_t |
Definition at line 49 of file iceoryx2.h.
| typedef struct iox2_server_h_t* iox2_server_h |
The owning handle for iox2_server_t. Passing the handle to a function transfers the ownership.
Definition at line 1900 of file iceoryx2.h.
| typedef const iox2_server_h* iox2_server_h_ref |
The non-owning handle for iox2_server_t. Passing the handle to a function does not transfer the ownership.
Definition at line 2184 of file iceoryx2.h.
| typedef struct iox2_server_h_t iox2_server_h_t |
Definition at line 778 of file iceoryx2.h.
| typedef struct iox2_server_t iox2_server_t |
| typedef void(* iox2_service_blackboard_creator_add_release_callback) (void *) |
Definition at line 2251 of file iceoryx2.h.
| typedef bool(* iox2_service_blackboard_key_eq_cmp_func) (const void *, const void *) |
Definition at line 2249 of file iceoryx2.h.
| typedef struct iox2_service_builder_blackboard_creator_h_t* iox2_service_builder_blackboard_creator_h |
The owning handle for iox2_service_builder_t which is already configured as event. Passing the handle to a function transfers the ownership.
Definition at line 2232 of file iceoryx2.h.
| typedef const iox2_service_builder_blackboard_creator_h* iox2_service_builder_blackboard_creator_h_ref |
The non-owning handle for iox2_service_builder_t which is already configured as event. Passing the handle to a function does not transfer the ownership.
Definition at line 2242 of file iceoryx2.h.
| typedef struct iox2_service_builder_blackboard_creator_h_t iox2_service_builder_blackboard_creator_h_t |
Definition at line 780 of file iceoryx2.h.
The owning handle for iox2_service_builder_t which is already configured as event. Passing the handle to a function transfers the ownership.
Definition at line 2237 of file iceoryx2.h.
| typedef const iox2_service_builder_blackboard_opener_h* iox2_service_builder_blackboard_opener_h_ref |
The non-owning handle for iox2_service_builder_t which is already configured as event. Passing the handle to a function does not transfer the ownership.
Definition at line 2247 of file iceoryx2.h.
| typedef struct iox2_service_builder_blackboard_opener_h_t iox2_service_builder_blackboard_opener_h_t |
Definition at line 782 of file iceoryx2.h.
| typedef struct iox2_service_builder_event_h_t* iox2_service_builder_event_h |
The owning handle for iox2_service_builder_t which is already configured as event. Passing the handle to an function transfers the ownership.
Definition at line 2217 of file iceoryx2.h.
| typedef const iox2_service_builder_event_h* iox2_service_builder_event_h_ref |
The non-owning handle for iox2_service_builder_t which is already configured as event. Passing the handle to an function does not transfers the ownership.
Definition at line 2266 of file iceoryx2.h.
| typedef struct iox2_service_builder_event_h_t iox2_service_builder_event_h_t |
Definition at line 784 of file iceoryx2.h.
| typedef struct iox2_service_builder_h_t* iox2_service_builder_h |
The owning handle for iox2_service_builder_t. Passing the handle to an function transfers the ownership.
Definition at line 1238 of file iceoryx2.h.
| typedef struct iox2_service_builder_h_t iox2_service_builder_h_t |
Definition at line 786 of file iceoryx2.h.
| typedef struct iox2_service_builder_pub_sub_h_t* iox2_service_builder_pub_sub_h |
The owning handle for iox2_service_builder_t which is already configured as event. Passing the handle to an function transfers the ownership.
Definition at line 2222 of file iceoryx2.h.
| typedef const iox2_service_builder_pub_sub_h* iox2_service_builder_pub_sub_h_ref |
The non-owning handle for iox2_service_builder_t which is already configured as event. Passing the handle to an function does not transfers the ownership.
Definition at line 2281 of file iceoryx2.h.
| typedef struct iox2_service_builder_pub_sub_h_t iox2_service_builder_pub_sub_h_t |
Definition at line 788 of file iceoryx2.h.
The owning handle for iox2_service_builder_t which is already configured as event. Passing the handle to an function transfers the ownership.
Definition at line 2227 of file iceoryx2.h.
The non-owning handle for iox2_service_builder_t which is already configured as event. Passing the handle to an function does not transfers the ownership.
Definition at line 2296 of file iceoryx2.h.
Definition at line 790 of file iceoryx2.h.
| typedef struct iox2_service_builder_t iox2_service_builder_t |
| typedef enum iox2_service_details_error_e iox2_service_details_error_e |
| typedef enum iox2_callback_progression_e(* iox2_service_list_callback) (const struct iox2_static_config_t *, iox2_callback_context) |
Definition at line 2188 of file iceoryx2.h.
| typedef enum iox2_service_list_error_e iox2_service_list_error_e |
| typedef struct iox2_service_name_h_t* iox2_service_name_h |
The owning handle for iox2_service_name_t. Passing the handle to an function transfers the ownership.
Definition at line 2320 of file iceoryx2.h.
| typedef struct iox2_service_name_h_t iox2_service_name_h_t |
Definition at line 792 of file iceoryx2.h.
| typedef const iox2_service_name_ptr_t* iox2_service_name_ptr |
The immutable pointer to the underlying ServiceName
Definition at line 1185 of file iceoryx2.h.
| typedef struct iox2_service_name_ptr_t iox2_service_name_ptr_t |
Definition at line 50 of file iceoryx2.h.
| typedef struct iox2_service_name_t iox2_service_name_t |
| typedef enum iox2_service_remove_error_e iox2_service_remove_error_e |
| typedef enum iox2_service_type_e iox2_service_type_e |
| typedef enum iox2_signal_handling_mode_e iox2_signal_handling_mode_e |
Defines how signals are handled by constructs that might register a custom signal handler.
| typedef struct iox2_static_config_blackboard_t iox2_static_config_blackboard_t |
| typedef union iox2_static_config_details_t iox2_static_config_details_t |
| typedef struct iox2_static_config_event_t iox2_static_config_event_t |
| typedef struct iox2_static_config_publish_subscribe_t iox2_static_config_publish_subscribe_t |
| typedef struct iox2_static_config_request_response_t iox2_static_config_request_response_t |
| typedef struct iox2_static_config_t iox2_static_config_t |
| typedef const iox2_subscriber_details_ptr_t* iox2_subscriber_details_ptr |
The immutable pointer to the underlying SubscriberDetails
Definition at line 1702 of file iceoryx2.h.
| typedef struct iox2_subscriber_details_ptr_t iox2_subscriber_details_ptr_t |
Definition at line 51 of file iceoryx2.h.
| typedef struct iox2_subscriber_h_t* iox2_subscriber_h |
The owning handle for iox2_subscriber_t. Passing the handle to an function transfers the ownership.
Definition at line 1920 of file iceoryx2.h.
| typedef const iox2_subscriber_h* iox2_subscriber_h_ref |
The non-owning handle for iox2_subscriber_t. Passing the handle to an function does not transfers the ownership.
Definition at line 2325 of file iceoryx2.h.
| typedef struct iox2_subscriber_h_t iox2_subscriber_h_t |
Definition at line 794 of file iceoryx2.h.
| typedef struct iox2_subscriber_t iox2_subscriber_t |
| typedef enum iox2_type_detail_error_e iox2_type_detail_error_e |
| typedef struct iox2_type_detail_t iox2_type_detail_t |
| typedef enum iox2_type_variant_e iox2_type_variant_e |
| typedef struct iox2_unique_client_id_h_t* iox2_unique_client_id_h |
The owning handle for [iox2_unique_client_id_t]. Passing the handle to an function transfers the ownership.
Definition at line 965 of file iceoryx2.h.
| typedef const iox2_unique_client_id_h* iox2_unique_client_id_h_ref |
The non-owning handle for [iox2_unique_client_id_t]. Passing the handle to an function does not transfers the ownership.
Definition at line 2357 of file iceoryx2.h.
| typedef struct iox2_unique_client_id_h_t iox2_unique_client_id_h_t |
Definition at line 796 of file iceoryx2.h.
| typedef struct iox2_unique_client_id_t iox2_unique_client_id_t |
| typedef struct iox2_unique_listener_id_h_t* iox2_unique_listener_id_h |
The owning handle for [iox2_unique_listener_id_t]. Passing the handle to an function transfers the ownership.
Definition at line 1149 of file iceoryx2.h.
| typedef const iox2_unique_listener_id_h* iox2_unique_listener_id_h_ref |
The non-owning handle for [iox2_unique_listener_id_t]. Passing the handle to an function does not transfers the ownership.
Definition at line 2362 of file iceoryx2.h.
| typedef struct iox2_unique_listener_id_h_t iox2_unique_listener_id_h_t |
Definition at line 798 of file iceoryx2.h.
| typedef struct iox2_unique_listener_id_t iox2_unique_listener_id_t |
| typedef struct iox2_unique_node_id_h_t* iox2_unique_node_id_h |
The owning handle for iox2_unique_node_id_t. Passing the handle to an function transfers the ownership.
Definition at line 1190 of file iceoryx2.h.
| typedef const iox2_unique_node_id_h* iox2_unique_node_id_h_ref |
The non-owning handle for iox2_unique_node_id_t. Passing the handle to an function does not transfers the ownership.
Definition at line 1195 of file iceoryx2.h.
| typedef struct iox2_unique_node_id_h_t iox2_unique_node_id_h_t |
Definition at line 800 of file iceoryx2.h.
| typedef const iox2_unique_node_id_ptr_t* iox2_unique_node_id_ptr |
The immutable pointer to the underlying NodeId
Definition at line 1010 of file iceoryx2.h.
| typedef struct iox2_unique_node_id_ptr_t iox2_unique_node_id_ptr_t |
Definition at line 43 of file iceoryx2.h.
| typedef struct iox2_unique_node_id_t iox2_unique_node_id_t |
| typedef struct iox2_unique_notifier_id_h_t* iox2_unique_notifier_id_h |
The owning handle for [iox2_unique_notifier_id_t]. Passing the handle to an function transfers the ownership.
Definition at line 1333 of file iceoryx2.h.
| typedef const iox2_unique_notifier_id_h* iox2_unique_notifier_id_h_ref |
The non-owning handle for [iox2_unique_notifier_id_t]. Passing the handle to an function does not transfers the ownership.
Definition at line 2376 of file iceoryx2.h.
| typedef struct iox2_unique_notifier_id_h_t iox2_unique_notifier_id_h_t |
Definition at line 802 of file iceoryx2.h.
| typedef struct iox2_unique_notifier_id_t iox2_unique_notifier_id_t |
| typedef struct iox2_unique_publisher_id_h_t* iox2_unique_publisher_id_h |
The owning handle for [iox2_unique_publisher_id_t]. Passing the handle to an function transfers the ownership.
Definition at line 1981 of file iceoryx2.h.
| typedef const iox2_unique_publisher_id_h* iox2_unique_publisher_id_h_ref |
The non-owning handle for [iox2_unique_publisher_id_t]. Passing the handle to an function does not transfers the ownership.
Definition at line 2381 of file iceoryx2.h.
| typedef struct iox2_unique_publisher_id_h_t iox2_unique_publisher_id_h_t |
Definition at line 804 of file iceoryx2.h.
| typedef struct iox2_unique_publisher_id_t iox2_unique_publisher_id_t |
| typedef struct iox2_unique_reader_id_h_t* iox2_unique_reader_id_h |
The owning handle for [iox2_unique_reader_id_t]. Passing the handle to a function transfers the ownership.
Definition at line 2023 of file iceoryx2.h.
| typedef const iox2_unique_reader_id_h* iox2_unique_reader_id_h_ref |
The non-owning handle for [iox2_unique_reader_id_t]. Passing the handle to a function does not transfer the ownership.
Definition at line 2386 of file iceoryx2.h.
| typedef struct iox2_unique_reader_id_h_t iox2_unique_reader_id_h_t |
Definition at line 806 of file iceoryx2.h.
| typedef struct iox2_unique_reader_id_t iox2_unique_reader_id_t |
| typedef struct iox2_unique_server_id_h_t* iox2_unique_server_id_h |
The owning handle for [iox2_unique_server_id_t]. Passing the handle to an function transfers the ownership.
Definition at line 2127 of file iceoryx2.h.
| typedef const iox2_unique_server_id_h* iox2_unique_server_id_h_ref |
The non-owning handle for [iox2_unique_server_id_t]. Passing the handle to an function does not transfers the ownership.
Definition at line 2391 of file iceoryx2.h.
| typedef struct iox2_unique_server_id_h_t iox2_unique_server_id_h_t |
Definition at line 808 of file iceoryx2.h.
| typedef struct iox2_unique_server_id_t iox2_unique_server_id_t |
| typedef struct iox2_unique_subscriber_id_h_t* iox2_unique_subscriber_id_h |
The owning handle for [iox2_unique_subscriber_id_t]. Passing the handle to an function transfers the ownership.
Definition at line 2342 of file iceoryx2.h.
| typedef const iox2_unique_subscriber_id_h* iox2_unique_subscriber_id_h_ref |
The non-owning handle for [iox2_unique_subscriber_id_t]. Passing the handle to an function does not transfers the ownership.
Definition at line 2396 of file iceoryx2.h.
| typedef struct iox2_unique_subscriber_id_h_t iox2_unique_subscriber_id_h_t |
Definition at line 810 of file iceoryx2.h.
| typedef struct iox2_unique_subscriber_id_t iox2_unique_subscriber_id_t |
| typedef struct iox2_unique_writer_id_h_t* iox2_unique_writer_id_h |
The owning handle for [iox2_unique_writer_id_t]. Passing the handle to a function transfers the ownership.
Definition at line 2401 of file iceoryx2.h.
| typedef const iox2_unique_writer_id_h* iox2_unique_writer_id_h_ref |
The non-owning handle for [iox2_unique_writer_id_t]. Passing the handle to a function does not transfer the ownership.
Definition at line 2406 of file iceoryx2.h.
| typedef struct iox2_unique_writer_id_h_t iox2_unique_writer_id_h_t |
Definition at line 812 of file iceoryx2.h.
| typedef struct iox2_unique_writer_id_t iox2_unique_writer_id_t |
| typedef struct iox2_waitset_attachment_id_h_t* iox2_waitset_attachment_id_h |
The owning handle for iox2_waitset_attachment_id_t. Passing the handle to an function transfers the ownership.
Definition at line 2436 of file iceoryx2.h.
| typedef const iox2_waitset_attachment_id_h* iox2_waitset_attachment_id_h_ref |
The non-owning handle for iox2_waitset_attachment_id_t. Passing the handle to an function does not transfers the ownership.
Definition at line 2444 of file iceoryx2.h.
| typedef struct iox2_waitset_attachment_id_h_t iox2_waitset_attachment_id_h_t |
Definition at line 814 of file iceoryx2.h.
| typedef struct iox2_waitset_attachment_id_t iox2_waitset_attachment_id_t |
| typedef struct iox2_waitset_builder_h_t* iox2_waitset_builder_h |
The owning handle for iox2_waitset_builder_t. Passing the handle to an function transfers the ownership.
Definition at line 1253 of file iceoryx2.h.
| typedef const iox2_waitset_builder_h* iox2_waitset_builder_h_ref |
The non-owning handle for iox2_waitset_builder_t. Passing the handle to an function does not transfers the ownership.
Definition at line 2474 of file iceoryx2.h.
| typedef struct iox2_waitset_builder_h_t iox2_waitset_builder_h_t |
Definition at line 816 of file iceoryx2.h.
| typedef struct iox2_waitset_builder_t iox2_waitset_builder_t |
| typedef enum iox2_waitset_create_error_e iox2_waitset_create_error_e |
| typedef struct iox2_waitset_guard_h_t* iox2_waitset_guard_h |
The owning handle for iox2_waitset_guard_t. Passing the handle to an function transfers the ownership.
Definition at line 2431 of file iceoryx2.h.
| typedef const iox2_waitset_guard_h* iox2_waitset_guard_h_ref |
The non-owning handle for iox2_attachment_id_t. Passing the handle to an function does not transfers the ownership.
Definition at line 2449 of file iceoryx2.h.
| typedef struct iox2_waitset_guard_h_t iox2_waitset_guard_h_t |
Definition at line 818 of file iceoryx2.h.
| typedef struct iox2_waitset_guard_t iox2_waitset_guard_t |
| typedef struct iox2_waitset_h_t* iox2_waitset_h |
The owning handle for iox2_waitset_t. Passing the handle to an function transfers the ownership.
Definition at line 2411 of file iceoryx2.h.
| typedef const iox2_waitset_h* iox2_waitset_h_ref |
The non-owning handle for iox2_waitset_t. Passing the handle to an function does not transfers the ownership.
Definition at line 2416 of file iceoryx2.h.
| typedef struct iox2_waitset_h_t iox2_waitset_h_t |
Definition at line 820 of file iceoryx2.h.
| typedef enum iox2_callback_progression_e(* iox2_waitset_run_callback) (iox2_waitset_attachment_id_h, iox2_callback_context) |
Definition at line 2436 of file iceoryx2.h.
| typedef enum iox2_waitset_run_error_e iox2_waitset_run_error_e |
| typedef enum iox2_waitset_run_result_e iox2_waitset_run_result_e |
| typedef struct iox2_waitset_t iox2_waitset_t |
| typedef enum iox2_writer_create_error_e iox2_writer_create_error_e |
| typedef const iox2_writer_details_ptr_t* iox2_writer_details_ptr |
The immutable pointer to the underlying WriterDetails
Definition at line 1434 of file iceoryx2.h.
| typedef struct iox2_writer_details_ptr_t iox2_writer_details_ptr_t |
Definition at line 52 of file iceoryx2.h.
| typedef struct iox2_writer_h_t* iox2_writer_h |
The owning handle for iox2_writer_t. Passing the handle to a function transfers the ownership.
Definition at line 1940 of file iceoryx2.h.
| typedef const iox2_writer_h* iox2_writer_h_ref |
The non-owning handle for iox2_writer_t. Passing the handle to a function does not transfer the ownership.
Definition at line 2479 of file iceoryx2.h.
| typedef struct iox2_writer_h_t iox2_writer_h_t |
Definition at line 822 of file iceoryx2.h.
| typedef struct iox2_writer_t iox2_writer_t |
Describes generically an allocation strategy, meaning how the memory is increased when the available memory is insufficient.
Definition at line 249 of file iceoryx2.h.
| Enumerator | |
|---|---|
| iox2_attribute_definition_error_e_EXCEEDS_MAX_SUPPORTED_ATTRIBUTES | |
Definition at line 94 of file iceoryx2.h.
| Enumerator | |
|---|---|
| iox2_attribute_verification_error_e_NON_EXISTING_KEY | |
| iox2_attribute_verification_error_e_INCOMPATIBLE_ATTRIBUTE | |
Definition at line 98 of file iceoryx2.h.
Defines the action that shall be take when an a data cannot be delivered.
Definition at line 304 of file iceoryx2.h.
| Enumerator | |
|---|---|
| iox2_backpressure_strategy_e_RETRY_UNTIL_DELIVERED | |
| iox2_backpressure_strategy_e_DISCARD_DATA | |
Definition at line 108 of file iceoryx2.h.
Definition at line 669 of file iceoryx2.h.
Definition at line 651 of file iceoryx2.h.
| Enumerator | |
|---|---|
| iox2_callback_progression_e_STOP | |
| iox2_callback_progression_e_CONTINUE | |
Definition at line 103 of file iceoryx2.h.
Definition at line 236 of file iceoryx2.h.
Failures occurring while creating a new [iox2_config_t] object with [iox2_config_from_file()].
Definition at line 116 of file iceoryx2.h.
| Enumerator | |
|---|---|
| iox2_connection_failure_e_FAILED_TO_ESTABLISH_CONNECTION | |
| iox2_connection_failure_e_UNABLE_TO_MAP_SENDERS_DATA_SEGMENT | |
Definition at line 503 of file iceoryx2.h.
Defines the action that shall be take when an degradation is detected. This can happen when a sample cannot be delivered, or when the system is corrupted and files are modified by non-iceoryx2 instances. Is used as return value of the degradation handler to define a custom behavior.
Definition at line 272 of file iceoryx2.h.
Defines the cause of a degradation and is a parameter of the degradation handler.
| Enumerator | |
|---|---|
| iox2_degradation_cause_e_FAILED_TO_ESTABLISH_CONNECTION | Connection could not be established |
| iox2_degradation_cause_e_CONNECTION_CORRUPTED | Connection is corrupted |
Definition at line 290 of file iceoryx2.h.
| Enumerator | |
|---|---|
| iox2_entry_handle_error_e_ENTRY_DOES_NOT_EXIST | |
Definition at line 647 of file iceoryx2.h.
| Enumerator | |
|---|---|
| iox2_entry_handle_mut_error_e_ENTRY_DOES_NOT_EXIST | |
| iox2_entry_handle_mut_error_e_HANDLE_ALREADY_EXISTS | |
Definition at line 683 of file iceoryx2.h.
Definition at line 413 of file iceoryx2.h.
Definition at line 326 of file iceoryx2.h.
Definition at line 143 of file iceoryx2.h.
| enum iox2_loan_error_e |
| Enumerator | |
|---|---|
| iox2_loan_error_e_OUT_OF_MEMORY | |
| iox2_loan_error_e_EXCEEDS_MAX_LOANED_SAMPLES | |
| iox2_loan_error_e_EXCEEDS_MAX_LOAN_SIZE | |
| iox2_loan_error_e_INTERNAL_FAILURE | |
Definition at line 394 of file iceoryx2.h.
| enum iox2_log_level_e |
| Enumerator | |
|---|---|
| iox2_log_level_e_TRACE | |
| iox2_log_level_e_DEBUG | |
| iox2_log_level_e_INFO | |
| iox2_log_level_e_WARN | |
| iox2_log_level_e_ERROR | |
| iox2_log_level_e_FATAL | |
Definition at line 151 of file iceoryx2.h.
| Enumerator | |
|---|---|
| iox2_messaging_pattern_e_PUBLISH_SUBSCRIBE | |
| iox2_messaging_pattern_e_EVENT | |
| iox2_messaging_pattern_e_REQUEST_RESPONSE | |
| iox2_messaging_pattern_e_BLACKBOARD | |
Definition at line 200 of file iceoryx2.h.
Failures of [iox2_dead_node_try_remove_stale_resources()] that occur when the stale resources of a dead node are removed.
Definition at line 543 of file iceoryx2.h.
Definition at line 214 of file iceoryx2.h.
The failures that can occur when a list of node states is created with [iox2_node_list()].
Definition at line 163 of file iceoryx2.h.
| enum iox2_node_state_e |
| Enumerator | |
|---|---|
| iox2_node_state_e_ALIVE | |
| iox2_node_state_e_DEAD | |
| iox2_node_state_e_INACCESSIBLE | |
| iox2_node_state_e_UNDEFINED | |
Definition at line 207 of file iceoryx2.h.
| Enumerator | |
|---|---|
| iox2_node_wait_failure_e_INTERRUPT | |
| iox2_node_wait_failure_e_TERMINATION_REQUEST | |
| iox2_node_wait_failure_e_INTERNAL_ERROR | |
Definition at line 178 of file iceoryx2.h.
Definition at line 334 of file iceoryx2.h.
Definition at line 224 of file iceoryx2.h.
Definition at line 448 of file iceoryx2.h.
Definition at line 341 of file iceoryx2.h.
Definition at line 349 of file iceoryx2.h.
| enum iox2_receive_error_e |
| Enumerator | |
|---|---|
| iox2_receive_error_e_EXCEEDS_MAX_BORROWS | |
| iox2_receive_error_e_FAILED_TO_ESTABLISH_CONNECTION | |
| iox2_receive_error_e_UNABLE_TO_MAP_SENDERS_DATA_SEGMENT | |
Definition at line 492 of file iceoryx2.h.
Definition at line 570 of file iceoryx2.h.
Definition at line 611 of file iceoryx2.h.
| Enumerator | |
|---|---|
| iox2_semantic_string_error_e_INVALID_CONTENT | |
| iox2_semantic_string_error_e_EXCEEDS_MAXIMUM_LENGTH | |
Definition at line 84 of file iceoryx2.h.
| enum iox2_send_error_e |
Definition at line 382 of file iceoryx2.h.
Definition at line 356 of file iceoryx2.h.
Definition at line 401 of file iceoryx2.h.
| Enumerator | |
|---|---|
| iox2_service_list_error_e_INSUFFICIENT_PERMISSIONS | |
| iox2_service_list_error_e_INTERNAL_ERROR | |
Definition at line 498 of file iceoryx2.h.
Definition at line 624 of file iceoryx2.h.
| enum iox2_service_type_e |
| Enumerator | |
|---|---|
| iox2_service_type_e_LOCAL | |
| iox2_service_type_e_IPC | |
Definition at line 89 of file iceoryx2.h.
Defines how signals are handled by constructs that might register a custom signal handler.
Definition at line 188 of file iceoryx2.h.
Definition at line 364 of file iceoryx2.h.
| Enumerator | |
|---|---|
| iox2_type_detail_error_e_INVALID_TYPE_NAME | |
| iox2_type_detail_error_e_INVALID_SIZE_OR_ALIGNMENT_VALUE | |
Definition at line 487 of file iceoryx2.h.
| enum iox2_type_variant_e |
| Enumerator | |
|---|---|
| iox2_type_variant_e_FIXED_SIZE | |
| iox2_type_variant_e_DYNAMIC | |
Definition at line 231 of file iceoryx2.h.
| Enumerator | |
|---|---|
| iox2_unique_id_generator_details_error_e_NOT_IMPLEMENTED | |
Definition at line 643 of file iceoryx2.h.
Definition at line 532 of file iceoryx2.h.
| Enumerator | |
|---|---|
| iox2_waitset_create_error_e_INTERNAL_ERROR | |
| iox2_waitset_create_error_e_INSUFFICIENT_RESOURCES | |
Definition at line 508 of file iceoryx2.h.
Definition at line 513 of file iceoryx2.h.
| Enumerator | |
|---|---|
| iox2_waitset_run_result_e_TERMINATION_REQUEST | |
| iox2_waitset_run_result_e_INTERRUPT | |
| iox2_waitset_run_result_e_STOP_REQUEST | |
| iox2_waitset_run_result_e_ALL_EVENTS_HANDLED | |
Definition at line 525 of file iceoryx2.h.
Definition at line 374 of file iceoryx2.h.
| struct __attribute__ | ( | (aligned(16)) | ) |
Definition at line 1343 of file iceoryx2.h.
References IOX2_REPR_ALIGNED, and iox2_response_storage_t.
| struct __attribute__ | ( | (aligned(4)) | ) |
Definition at line 934 of file iceoryx2.h.
References iox2_buffer_16_align_4_t, and IOX2_REPR_ALIGNED.
| struct __attribute__ | ( | (aligned(8)) | ) |
Sample header used by MessagingPattern::RequestResponse
The system-wide unique id of a iox2_client_t.
A storage object that has the size to store a config
The system-wide unique id of a iox2_listener_t.
The system-wide unique id of a iox2_notifier_t.
The system-wide unique id of a iox2_publisher_t.
The system-wide unique id of a iox2_reader_t.
Response header used by MessagingPattern::RequestResponse
The system-wide unique id of a iox2_server_t.
Sample header used by MessagingPattern::PublishSubscribe
The system-wide unique id of a iox2_subscriber_t.
The system-wide unique id of a iox2_writer_t.
Definition at line 832 of file iceoryx2.h.
References IOX2_REPR_ALIGNED, and iox2_request_header_storage_t.
| enum iox2_client_create_error_e __iox2_internal_client_create_error_stub | ( | void | ) |
| enum iox2_config_creation_error_e __iox2_internal_config_creation_error_stub | ( | void | ) |
| enum iox2_connection_failure_e __iox2_internal_connection_failure_stub | ( | void | ) |
| enum iox2_event_open_or_create_error_e __iox2_internal_event_open_or_create_error_stub | ( | void | ) |
| enum iox2_degradation_action_e __iox2_internal_iox2_degradation_action_stub | ( | void | ) |
| enum iox2_degradation_cause_e __iox2_internal_iox2_iox2_degradation_cause_stub | ( | void | ) |
| enum iox2_service_remove_error_e __iox2_internal_iox2_service_remove_error_stub | ( | void | ) |
| enum iox2_unique_id_generator_details_error_e __iox2_internal_iox2_unique_id_generator_details_error_stub | ( | void | ) |
| enum iox2_listener_create_error_e __iox2_internal_listener_create_error_stub | ( | void | ) |
| enum iox2_listener_wait_error_e __iox2_internal_listener_wait_error_stub | ( | void | ) |
| enum iox2_loan_error_e __iox2_internal_loan_error_stub | ( | void | ) |
| enum iox2_node_cleanup_failure_e __iox2_internal_node_cleanup_failure_stub | ( | void | ) |
| enum iox2_node_creation_failure_e __iox2_internal_node_creation_failure_stub | ( | void | ) |
| enum iox2_node_list_failure_e __iox2_internal_node_list_failure_stub | ( | void | ) |
| enum iox2_node_wait_failure_e __iox2_internal_node_wait_failure_stub | ( | void | ) |
| enum iox2_notifier_create_error_e __iox2_internal_notifier_create_error_stub | ( | void | ) |
| enum iox2_notifier_notify_error_e __iox2_internal_notifier_notify_error_stub | ( | void | ) |
| enum iox2_pub_sub_open_or_create_error_e __iox2_internal_pub_sub_open_or_create_error_stub | ( | void | ) |
| enum iox2_publisher_create_error_e __iox2_internal_publisher_create_error_stub | ( | void | ) |
| enum iox2_receive_error_e __iox2_internal_receive_error_stub | ( | void | ) |
| enum iox2_request_response_open_or_create_error_e __iox2_internal_request_response_open_or_create_error_stub | ( | void | ) |
| enum iox2_request_send_error_e __iox2_internal_request_send_error_stub | ( | void | ) |
| enum iox2_semantic_string_error_e __iox2_internal_semantic_string_error_stub | ( | void | ) |
| enum iox2_send_error_e __iox2_internal_send_error_stub | ( | void | ) |
| enum iox2_server_create_error_e __iox2_internal_server_create_error_stub | ( | void | ) |
| enum iox2_service_details_error_e __iox2_internal_service_details_error_stub | ( | void | ) |
| enum iox2_service_list_error_e __iox2_internal_service_list_error_stub | ( | void | ) |
| enum iox2_subscriber_create_error_e __iox2_internal_subscriber_create_error_stub | ( | void | ) |
| enum iox2_type_detail_error_e __iox2_internal_type_detail_error_stub | ( | void | ) |
| enum iox2_waitset_attachment_error_e __iox2_internal_waitset_attachment_error_stub | ( | void | ) |
| enum iox2_waitset_create_error_e __iox2_internal_waitset_create_error_stub | ( | void | ) |
| enum iox2_waitset_run_error_e __iox2_internal_waitset_run_error_stub | ( | void | ) |
| enum iox2_waitset_run_result_e __iox2_internal_waitset_run_result_stub | ( | void | ) |
| void iox2_active_request_drop | ( | iox2_active_request_h | handle | ) |
This function needs to be called to destroy the active_request!
| bool iox2_active_request_has_disconnect_hint | ( | iox2_active_request_h_ref | handle | ) |
Returns true if the client wants to gracefully disconnect. This allows the Server to send its last response and then drop the active request to signal the client that no more response will be sent.
| void iox2_active_request_header | ( | iox2_active_request_h_ref | handle, |
| struct iox2_request_header_t * | header_struct_ptr, | ||
| iox2_request_header_h * | header_handle_ptr ) |
Acquires the requests header.
| bool iox2_active_request_is_connected | ( | iox2_active_request_h_ref | handle | ) |
Returns true if the corresponding pending response is still connected and can receive responses.
| int iox2_active_request_loan_slice_uninit | ( | iox2_active_request_h_ref | active_request_handle, |
| struct iox2_response_mut_t * | response_struct_ptr, | ||
| iox2_response_mut_h * | response_handle_ptr, | ||
| size_t | number_of_elements ) |
Loans memory from the servers data segment.
Return [IOX2_OK] on success, otherwise [iox2_loan_error_e](crate::iox2_loan_error_e).
| void iox2_active_request_payload | ( | iox2_active_request_h_ref | handle, |
| const void ** | payload_ptr, | ||
| c_size_t * | number_of_elements ) |
Acquires the request payload.
| c_size_t iox2_active_request_payload_number_of_bytes | ( | iox2_active_request_h_ref | handle | ) |
Returns the number of bytes of the received request payload.
| int iox2_active_request_send_copy | ( | iox2_active_request_h_ref | active_request_handle, |
| const void * | data_ptr, | ||
| size_t | size_of_element, | ||
| size_t | number_of_elements ) |
Sends a copy of the provided data via the server.
Return [IOX2_OK] on success, otherwise [iox2_send_error_e].
| void iox2_active_request_user_header | ( | iox2_active_request_h_ref | handle, |
| const void ** | header_ptr ) |
Acquires the request user header.
| const char * iox2_attribute_definition_error_create_error_string | ( | enum iox2_attribute_definition_error_e | error | ) |
Returns a string literal describing the provided [iox2_attribute_definition_error_e].
A pointer to a null-terminated string containing the error message. The string is stored in the .rodata section of the binary.
The returned pointer must not be modified or freed and is valid as long as the program runs.
| void iox2_attribute_key | ( | iox2_attribute_h_ref | handle, |
| char * | buffer, | ||
| size_t | buffer_len ) |
Copies the keys value into the provided buffer.
| size_t iox2_attribute_key_len | ( | iox2_attribute_h_ref | handle | ) |
| void iox2_attribute_set_drop | ( | iox2_attribute_set_h | handle | ) |
This function needs to be called to destroy the attribute set!
| iox2_attribute_h_ref iox2_attribute_set_index | ( | iox2_attribute_set_ptr | handle, |
| size_t | index ) |
Returns a [iox2_attribute_h_ref] to the attribute stored at the provided index.
| void iox2_attribute_set_iter_key_values | ( | iox2_attribute_set_ptr | handle, |
| const char * | key, | ||
| iox2_attribute_set_get_callback | callback, | ||
| iox2_callback_context | callback_ctx ) |
| void iox2_attribute_set_key_value | ( | iox2_attribute_set_ptr | handle, |
| const char * | key, | ||
| size_t | index, | ||
| char * | buffer, | ||
| size_t | buffer_len, | ||
| bool * | has_value ) |
Returns a value of a key at a specific index. The index enumerates the values of the key if the key has multiple values. The values are always stored at the same position during the lifetime of the service but they can change when the process is recreated by another process when the system restarts.
| void iox2_attribute_set_new_clone | ( | struct iox2_attribute_set_t * | struct_ptr, |
| iox2_attribute_set_ptr | source_ptr, | ||
| iox2_attribute_set_h * | handle_ptr ) |
This function create a new attribute_set by cloning an already existing one!
| size_t iox2_attribute_set_number_of_attributes | ( | iox2_attribute_set_ptr | handle | ) |
| size_t iox2_attribute_set_number_of_key_values | ( | iox2_attribute_set_ptr | handle, |
| const char * | key ) |
| iox2_attribute_set_ptr iox2_attribute_specifier_attributes | ( | iox2_attribute_specifier_h_ref | handle | ) |
Returns a [iox2_attribute_set_ptr] to the underlying attribute set.
| int iox2_attribute_specifier_define | ( | iox2_attribute_specifier_h_ref | handle, |
| const char * | key, | ||
| const char * | value ) |
Defines a attribute (key / value pair).
Returns IOX2_OK on success, an [iox2_attribute_definition_error_e](crate::iox2_attribute_definition_error_e) otherwise.
| void iox2_attribute_specifier_drop | ( | iox2_attribute_specifier_h | handle | ) |
Deletes a [iox2_attribute_specifier_h]. It must be created with [iox2_attribute_specifier_new()].
| int iox2_attribute_specifier_new | ( | struct iox2_attribute_specifier_t * | struct_ptr, |
| iox2_attribute_specifier_h * | handle_ptr ) |
Creates a new [iox2_attribute_specifier_h]. It must be cleaned up with [iox2_attribute_specifier_drop()]. If the struct_ptr is null, then the function will allocate memory.
| void iox2_attribute_value | ( | iox2_attribute_h_ref | handle, |
| char * | buffer, | ||
| size_t | buffer_len ) |
Copies the values value into the provided buffer.
| size_t iox2_attribute_value_len | ( | iox2_attribute_h_ref | handle | ) |
| const char * iox2_attribute_verification_error_create_error_string | ( | enum iox2_attribute_verification_error_e | error | ) |
Returns a string literal describing the provided [iox2_attribute_verification_error_e].
A pointer to a null-terminated string containing the error message. The string is stored in the .rodata section of the binary.
The returned pointer must not be modified or freed and is valid as long as the program runs.
| iox2_attribute_set_ptr iox2_attribute_verifier_attributes | ( | iox2_attribute_verifier_h_ref | handle | ) |
Returns a [iox2_attribute_set_ptr] to the underlying attribute set.
| void iox2_attribute_verifier_drop | ( | iox2_attribute_verifier_h | handle | ) |
Deletes a [iox2_attribute_verifier_h]. It must be created with [iox2_attribute_verifier_new()].
| size_t iox2_attribute_verifier_key | ( | iox2_attribute_verifier_h_ref | handle, |
| size_t | key_index, | ||
| char * | key_value_buffer, | ||
| size_t | key_value_buffer_len ) |
Copies the key value at a specific key index into the provided buffer.
| size_t iox2_attribute_verifier_key_len | ( | iox2_attribute_verifier_h_ref | handle, |
| size_t | key_index ) |
Returns the length of a required key at a specific key index.
| int iox2_attribute_verifier_new | ( | struct iox2_attribute_verifier_t * | struct_ptr, |
| iox2_attribute_verifier_h * | handle_ptr ) |
Creates a new [iox2_attribute_verifier_h]. It must be cleaned up with [iox2_attribute_verifier_drop()]. If the struct_ptr is null, then the function will allocate memory.
| size_t iox2_attribute_verifier_number_of_keys | ( | iox2_attribute_verifier_h_ref | handle | ) |
Returns the number of required keys.
| int iox2_attribute_verifier_require | ( | iox2_attribute_verifier_h_ref | handle, |
| const char * | key, | ||
| const char * | value ) |
Defines a attribute (key / value pair) that is required.
Returns IOX2_OK on success, an [iox2_attribute_definition_error_e](crate::iox2_attribute_definition_error_e) otherwise.
| int iox2_attribute_verifier_require_key | ( | iox2_attribute_verifier_h_ref | handle, |
| const char * | key ) |
Defines a key that must be present.
Returns IOX2_OK on success, an [iox2_attribute_definition_error_e](crate::iox2_attribute_definition_error_e) otherwise.
| int iox2_attribute_verifier_verify_requirements | ( | iox2_attribute_verifier_h_ref | handle, |
| iox2_attribute_set_ptr | rhs, | ||
| char * | incompatible_key_buffer, | ||
| size_t | incompatible_key_buffer_len ) |
Verifies if the [iox2_attribute_set_ptr] contains all required keys and key-value pairs.
Returns IOX2_OK on success, an [iox2_attribute_verification_error_e](crate::iox2_attribute_verification_error_e) otherwise.
| void iox2_backpressure_info_elapsed_time | ( | iox2_backpressure_info_h_ref | info_handle, |
| uint64_t * | seconds, | ||
| uint32_t * | nanoseconds ) |
Obtains the elapsed time since the initial retry
| void iox2_backpressure_info_receiver_port_id | ( | iox2_backpressure_info_h_ref | info_handle, |
| struct iox2_buffer_16_align_4_t * | receiver_port_id ) |
Obtains the receiver port id, which is involved in the delivery incident
References iox2_buffer_16_align_4_t.
| uint64_t iox2_backpressure_info_retries | ( | iox2_backpressure_info_h_ref | info_handle | ) |
Obtains the number of retries for the running delivery to the receiver port
| void iox2_backpressure_info_sender_port_id | ( | iox2_backpressure_info_h_ref | info_handle, |
| struct iox2_buffer_16_align_4_t * | sender_port_id ) |
Obtains the sender port id, which is involved in the delivery incident
References iox2_buffer_16_align_4_t.
| void iox2_backpressure_info_service_id | ( | iox2_backpressure_info_h_ref | info_handle, |
| struct iox2_buffer_16_align_4_t * | service_id ) |
Obtains the service id, which is involved in the delivery incident
References iox2_buffer_16_align_4_t.
| const char * iox2_blackboard_create_error_string | ( | enum iox2_blackboard_create_error_e | error | ) |
Returns a string literal describing the provided [iox2_blackboard_create_error_e].
A pointer to a null-terminated string containing the error message. The string is stored in the .rodata section of the binary.
The returned pointer must not be modified or freed and is valid as long as the program runs.
| const char * iox2_blackboard_open_error_string | ( | enum iox2_blackboard_open_error_e | error | ) |
Returns a string literal describing the provided [iox2_blackboard_open_error_e].
A pointer to a null-terminated string containing the error message. The string is stored in the .rodata section of the binary.
The returned pointer must not be modified or freed and is valid as long as the program runs.
| iox2_attribute_set_ptr iox2_cast_attribute_set_ptr | ( | iox2_attribute_set_h | handle | ) |
This function casts a [iox2_attribute_set_h] into a [iox2_attribute_set_ptr]
Returns a [iox2_attribute_set_ptr]
| iox2_config_ptr iox2_cast_config_ptr | ( | iox2_config_h | config_handle | ) |
This function casts a [iox2_config_h] into a [iox2_config_ptr]
Returns a [iox2_config_ptr]
| iox2_file_descriptor_ptr iox2_cast_file_descriptor_ptr | ( | iox2_file_descriptor_h | handle | ) |
Casts a [iox2_file_descriptor_h] into an [iox2_file_descriptor_ptr]. The result is valid as long as the source is valid.
| iox2_node_name_ptr iox2_cast_node_name_ptr | ( | iox2_node_name_h | node_name_handle | ) |
This function casts a [iox2_node_name_h] into a [iox2_node_name_ptr]
Returns a [iox2_node_name_ptr]
| iox2_port_name_ptr iox2_cast_port_name_ptr | ( | iox2_port_name_h | port_name_handle | ) |
This function casts a [iox2_port_name_h] into a [iox2_port_name_ptr]
Returns a [iox2_port_name_ptr]
| iox2_service_name_ptr iox2_cast_service_name_ptr | ( | iox2_service_name_h | service_name_handle | ) |
This function casts a [iox2_service_name_h] into a [iox2_service_name_ptr]
Returns a [iox2_service_name_ptr]
| enum iox2_backpressure_strategy_e iox2_client_backpressure_strategy | ( | iox2_client_h_ref | handle | ) |
Returns the strategy the client follows when a request cannot be delivered since the servers buffer is full.
Returns [iox2_backpressure_strategy_e].
| const char * iox2_client_create_error_string | ( | enum iox2_client_create_error_e | error | ) |
Returns a string literal describing the provided [iox2_client_create_error_e].
A pointer to a null-terminated string containing the error message. The string is stored in the .rodata section of the binary.
The returned pointer must not be modified or freed and is valid as long as the program runs.
| void iox2_client_details_client_id | ( | iox2_client_details_ptr | handle, |
| struct iox2_unique_client_id_t * | id_struct_ptr, | ||
| iox2_unique_client_id_h * | id_handle_ptr ) |
Returns the unique port id of the client.
| iox2_port_name_ptr iox2_client_details_client_name | ( | iox2_client_details_ptr | handle | ) |
Returns the [iox2_port_name_ptr], an immutable pointer to the name of the client.
| c_size_t iox2_client_details_max_active_requests | ( | iox2_client_details_ptr | handle | ) |
| c_size_t iox2_client_details_max_slice_len | ( | iox2_client_details_ptr | handle | ) |
| iox2_unique_node_id_ptr iox2_client_details_node_id | ( | iox2_client_details_ptr | handle | ) |
Returns the [iox2_unique_node_id_ptr], an immutable pointer to the node id.
| c_size_t iox2_client_details_number_of_requests | ( | iox2_client_details_ptr | handle | ) |
| c_size_t iox2_client_details_response_buffer_size | ( | iox2_client_details_ptr | handle | ) |
| void iox2_client_drop | ( | iox2_client_h | client_handle | ) |
This function needs to be called to destroy the client!
| void iox2_client_id | ( | iox2_client_h_ref | handle, |
| struct iox2_unique_client_id_t * | id_struct_ptr, | ||
| iox2_unique_client_id_h * | id_handle_ptr ) |
Returns the unique port id of the client.
| c_size_t iox2_client_initial_max_slice_len | ( | iox2_client_h_ref | handle | ) |
Returns the initial max slice len with which the client was created.
| int iox2_client_loan_slice_uninit | ( | iox2_client_h_ref | client_handle, |
| struct iox2_request_mut_t * | request_struct_ptr, | ||
| iox2_request_mut_h * | request_handle_ptr, | ||
| size_t | number_of_elements ) |
Loans memory from the clients data segment.
Return [IOX2_OK] on success, otherwise [iox2_loan_error_e](crate::iox2_loan_error_e).
| c_size_t iox2_client_max_active_requests | ( | iox2_client_h_ref | handle | ) |
Returns the maximal active requests of the client.
| iox2_port_name_ptr iox2_client_name | ( | iox2_client_h_ref | handle | ) |
Returns the [iox2_port_name_ptr], an immutable pointer to the port name.
| int iox2_client_send_copy | ( | iox2_client_h_ref | client_handle, |
| const void * | data_ptr, | ||
| size_t | size_of_element, | ||
| size_t | number_of_elements, | ||
| struct iox2_pending_response_t * | pending_response_struct_ptr, | ||
| iox2_pending_response_h * | pending_response_handle_ptr ) |
Sends a copy of the provided data via the client and provides a [iox2_pending_response_h] to receive the corresponding responses.
Return [IOX2_OK] on success, otherwise [iox2_send_error_e](crate::iox2_send_error_e).
| void iox2_config_clone | ( | iox2_config_h_ref | handle, |
| struct iox2_config_t * | struct_ptr, | ||
| iox2_config_h * | handle_ptr ) |
Clones a config from a given non-owning [iox2_config_h_ref].
| const char * iox2_config_creation_error_string | ( | enum iox2_config_creation_error_e | error | ) |
Returns a string literal describing the provided [iox2_config_creation_error_e].
A pointer to a null-terminated string containing the error message. The string is stored in the .rodata section of the binary.
The returned pointer must not be modified or freed and is valid as long as the program runs.
| int iox2_config_default | ( | struct iox2_config_t * | struct_ptr, |
| iox2_config_h * | handle_ptr ) |
Creates an iceoryx2 config populated with default values.
| c_size_t iox2_config_defaults_blackboard_max_nodes | ( | iox2_config_h_ref | handle | ) |
Returns the maximum amount of supported [iox2_node_h](crate::api::iox2_node_h)s. Defines indirectly how many processes can open the service at the same time.
| c_size_t iox2_config_defaults_blackboard_max_readers | ( | iox2_config_h_ref | handle | ) |
Returns the maximum amount of supported [iox2_reader_h](crate::api::iox2_reader_h)s
| void iox2_config_defaults_blackboard_set_max_nodes | ( | iox2_config_h_ref | handle, |
| c_size_t | value ) |
Sets the maximum amount of supported [iox2_node_h](crate::api::iox2_node_h)s.
| void iox2_config_defaults_blackboard_set_max_readers | ( | iox2_config_h_ref | handle, |
| c_size_t | value ) |
Sets the maximum amount of supported [iox2_reader_h](crate::api::iox2_reader_h)s
| bool iox2_config_defaults_event_deadline | ( | iox2_config_h_ref | handle, |
| uint64_t * | seconds, | ||
| uint32_t * | nanoseconds ) |
Returns the default deadline for event services. If there is a deadline set, the provided arguments seconds and nanoseconds will be set true is returned. Otherwise, false is returned and nothing is set.
| c_size_t iox2_config_defaults_event_event_id_max_value | ( | iox2_config_h_ref | handle | ) |
Returns the largest event id supported by the event service
| c_size_t iox2_config_defaults_event_max_listeners | ( | iox2_config_h_ref | handle | ) |
Returns the maximum amount of supported [iox2_listener_h](crate::api::iox2_listener_h)
| c_size_t iox2_config_defaults_event_max_nodes | ( | iox2_config_h_ref | handle | ) |
Returns the maximum amount of supported [iox2_node_h](crate::api::iox2_node_h)s. Defines indirectly how many processes can open the service at the same time.
| c_size_t iox2_config_defaults_event_max_notifiers | ( | iox2_config_h_ref | handle | ) |
Returns the maximum amount of supported [iox2_notifier_h](crate::api::iox2_notifier_h)
| bool iox2_config_defaults_event_notifier_created_event | ( | iox2_config_h_ref | handle, |
| c_size_t * | value ) |
Returns the event id value that is emitted when a new notifier is created. It returns true if a value is emitted and sets the provided value, otherwise it returns false.
| bool iox2_config_defaults_event_notifier_dead_event | ( | iox2_config_h_ref | handle, |
| c_size_t * | value ) |
Returns the event id value that is emitted when a notifier is identified as dead. It returns true if a value is emitted and sets the provided value, otherwise it returns false.
| bool iox2_config_defaults_event_notifier_dropped_event | ( | iox2_config_h_ref | handle, |
| c_size_t * | value ) |
Returns the event id value that is emitted when a notifier is dropped. It returns true if a value is emitted and sets the provided value, otherwise it returns false.
| void iox2_config_defaults_event_set_deadline | ( | iox2_config_h_ref | handle, |
| const uint64_t * | seconds, | ||
| const uint32_t * | nanoseconds ) |
Sets the default deadline for event services. If seconds and nanoseconds is NULL the deadline will be disabled, otherwise the deadline will be set to the provided values.
| void iox2_config_defaults_event_set_event_id_max_value | ( | iox2_config_h_ref | handle, |
| c_size_t | value ) |
Sets the largest event id supported by the event service
| void iox2_config_defaults_event_set_max_listeners | ( | iox2_config_h_ref | handle, |
| c_size_t | value ) |
Sets the maximum amount of supported [iox2_listener_h](crate::api::iox2_listener_h)
| void iox2_config_defaults_event_set_max_nodes | ( | iox2_config_h_ref | handle, |
| c_size_t | value ) |
Sets the maximum amount of supported [iox2_node_h](crate::api::iox2_node_h)s.
| void iox2_config_defaults_event_set_max_notifiers | ( | iox2_config_h_ref | handle, |
| c_size_t | value ) |
Sets the maximum amount of supported [iox2_notifier_h](crate::api::iox2_notifier_h)
| void iox2_config_defaults_event_set_notifier_created_event | ( | iox2_config_h_ref | handle, |
| const c_size_t * | value ) |
Sets the event id value that is emitted when a new notifier is created. If value is NULL no event will be emitted, otherwise the provided value will be used.
| void iox2_config_defaults_event_set_notifier_dead_event | ( | iox2_config_h_ref | handle, |
| const c_size_t * | value ) |
Sets the event id value that is emitted when a notifier is identified as dead. If value is NULL no event will be emitted, otherwise the provided value will be used.
| void iox2_config_defaults_event_set_notifier_dropped_event | ( | iox2_config_h_ref | handle, |
| const c_size_t * | value ) |
Sets the event id value that is emitted when a notifier is dropped. If value is NULL no event will be emitted, otherwise the provided value will be used.
| int iox2_config_defaults_publish_subscribe_backpressure_strategy | ( | iox2_config_h_ref | handle | ) |
If safe overflow is deactivated it defines the deliver strategy of the [iox2_publisher_h](crate::api::iox2_publisher_h) when the [iox2_subscriber_h](crate::api::iox2_subscriber_h)s buffer is full.
Returns [iox2_backpressure_strategy_e]
| bool iox2_config_defaults_publish_subscribe_enable_safe_overflow | ( | iox2_config_h_ref | handle | ) |
Defines how the [iox2_subscriber_h](crate::api::iox2_subscriber_h) buffer behaves when it is full. When safe overflow is activated, the [iox2_publisher_h](crate::api::iox2_publisher_h) will replace the oldest [iox2_sample_h](crate::api::iox2_sample_h) with the newest one.
| c_size_t iox2_config_defaults_publish_subscribe_max_nodes | ( | iox2_config_h_ref | handle | ) |
Returns the maximum amount of supported [iox2_node_h](crate::api::iox2_node_h)s. Defines indirectly how many processes can open the service at the same time.
| c_size_t iox2_config_defaults_publish_subscribe_max_publishers | ( | iox2_config_h_ref | handle | ) |
Returns maximum amount of supported [iox2_publisher_h](crate::api::iox2_publisher_h)s
| c_size_t iox2_config_defaults_publish_subscribe_max_subscribers | ( | iox2_config_h_ref | handle | ) |
Returns the maximum amount of supported [iox2_subscriber_h](crate::api::iox2_subscriber_h)s
| c_size_t iox2_config_defaults_publish_subscribe_publisher_history_size | ( | iox2_config_h_ref | handle | ) |
Returns the maximum history size a [iox2_subscriber_h](crate::api::iox2_subscriber_h) can request from a [iox2_publisher_h](crate::api::iox2_publisher_h).
| c_size_t iox2_config_defaults_publish_subscribe_publisher_max_loaned_samples | ( | iox2_config_h_ref | handle | ) |
Returns the maximum amount of [iox2_sample_mut_h](crate::api::iox2_sample_mut_h)s a [iox2_publisher_h](crate::api::iox2_publisher_h) can loan at the same time.
| void iox2_config_defaults_publish_subscribe_set_backpressure_strategy | ( | iox2_config_h_ref | handle, |
| enum iox2_backpressure_strategy_e | value ) |
| void iox2_config_defaults_publish_subscribe_set_enable_safe_overflow | ( | iox2_config_h_ref | handle, |
| bool | value ) |
| void iox2_config_defaults_publish_subscribe_set_max_nodes | ( | iox2_config_h_ref | handle, |
| c_size_t | value ) |
Sets the maximum amount of supported [iox2_node_h](crate::api::iox2_node_h)s.
| void iox2_config_defaults_publish_subscribe_set_max_publishers | ( | iox2_config_h_ref | handle, |
| c_size_t | value ) |
Sets the maximum amount of supported [iox2_publisher_h](crate::api::iox2_publisher_h)s
| void iox2_config_defaults_publish_subscribe_set_max_subscribers | ( | iox2_config_h_ref | handle, |
| c_size_t | value ) |
Sets the maximum amount of supported [iox2_subscriber_h](crate::api::iox2_subscriber_h)s
| void iox2_config_defaults_publish_subscribe_set_publisher_history_size | ( | iox2_config_h_ref | handle, |
| c_size_t | value ) |
Sets the maximum history size a [iox2_subscriber_h](crate::api::iox2_subscriber_h) can request from a [iox2_publisher_h](crate::api::iox2_publisher_h).
| void iox2_config_defaults_publish_subscribe_set_publisher_max_loaned_samples | ( | iox2_config_h_ref | handle, |
| c_size_t | value ) |
Sets the maximum amount of [iox2_sample_mut_h](crate::api::iox2_sample_mut_h)s a [iox2_publisher_h](crate::api::iox2_publisher_h) can loan at the same time.
| void iox2_config_defaults_publish_subscribe_set_subscriber_expired_connection_buffer | ( | iox2_config_h_ref | handle, |
| c_size_t | value ) |
| void iox2_config_defaults_publish_subscribe_set_subscriber_max_borrowed_samples | ( | iox2_config_h_ref | handle, |
| c_size_t | value ) |
Sets the maximum amount of [iox2_sample_h](crate::api::iox2_sample_h)s a [iox2_subscriber_h](crate::api::iox2_subscriber_h) can hold at the same time.
| void iox2_config_defaults_publish_subscribe_set_subscriber_max_buffer_size | ( | iox2_config_h_ref | handle, |
| c_size_t | value ) |
Sets the maximum buffer size a [iox2_subscriber_h](crate::api::iox2_subscriber_h) can have
| c_size_t iox2_config_defaults_publish_subscribe_subscriber_expired_connection_buffer | ( | iox2_config_h_ref | handle | ) |
Defines the size of the internal [iox2_subscriber_h](crate::api::iox2_subscriber_h) buffer that contains expired connections. An connection is expired when the [iox2_publisher_h](crate::api::iox2_publisher_h) disconnected from a service and the connection still contains unconsumed [iox2_sample_h](crate::api::iox2_sample_h)s.
| c_size_t iox2_config_defaults_publish_subscribe_subscriber_max_borrowed_samples | ( | iox2_config_h_ref | handle | ) |
Returns the maximum amount of [iox2_sample_h](crate::api::iox2_sample_h)s a [iox2_subscriber_h](crate::api::iox2_subscriber_h) can hold at the same time.
| c_size_t iox2_config_defaults_publish_subscribe_subscriber_max_buffer_size | ( | iox2_config_h_ref | handle | ) |
Returns the maximum buffer size a [iox2_subscriber_h](crate::api::iox2_subscriber_h) can have
| int iox2_config_defaults_request_response_client_backpressure_strategy | ( | iox2_config_h_ref | handle | ) |
If safe overflow is deactivated it defines the deliver strategy of the [iox2_client_h](crate::api::iox2_client_h) when the [iox2_server_h](crate::api::iox2_server_h)s request buffer is full.
Returns [iox2_backpressure_strategy_e]
| c_size_t iox2_config_defaults_request_response_client_expired_connection_buffer | ( | iox2_config_h_ref | handle | ) |
Returns the expired connection buffer size for [iox2_client_h](crate::api::iox2_client_h) to retrieve [iox2_response_h](crate::api::iox2_response_h) from disconnected [iox2_server_h](crate::api::iox2_server_h)
| bool iox2_config_defaults_request_response_enable_safe_overflow_for_requests | ( | iox2_config_h_ref | handle | ) |
Defines how the [iox2_server_h](crate::api::iox2_server_h) buffer behaves when it is full. When safe overflow is activated, the [iox2_client_h](crate::api::iox2_client_h) will replace the oldest [iox2_request_mut_h](crate::api::iox2_request_mut_h) with the newest one.
| bool iox2_config_defaults_request_response_enable_safe_overflow_for_responses | ( | iox2_config_h_ref | handle | ) |
Defines how the [iox2_client_h](crate::api::iox2_client_h) buffer behaves when it is full. When safe overflow is activated, the [iox2_server_h](crate::api::iox2_server_h) will replace the oldest [iox2_response_h](crate::api::iox2_response_h) with the newest one.
| bool iox2_config_defaults_request_response_has_fire_and_forget_requests | ( | iox2_config_h_ref | handle | ) |
Returns if the service supports fire and forget requests. Those are requests where the [iox2_client_h](crate::api::iox2_client_h) does not expect a response.
| c_size_t iox2_config_defaults_request_response_max_active_requests_per_client | ( | iox2_config_h_ref | handle | ) |
Returns how many active requests a [iox2_client_h](crate::api::iox2_client_h) can send out in parallel and expect responses from.
| c_size_t iox2_config_defaults_request_response_max_borrowed_responses_per_pending_response | ( | iox2_config_h_ref | handle | ) |
Returns how many [iox2_response_h](crate::api::iox2_response_h)s can be borrowed per request.
| c_size_t iox2_config_defaults_request_response_max_clients | ( | iox2_config_h_ref | handle | ) |
Returns how many [iox2_client_h](crate::api::iox2_client_h)s can be connected to the same service at the same time.
| c_size_t iox2_config_defaults_request_response_max_loaned_requests | ( | iox2_config_h_ref | handle | ) |
Returns how many [iox2_request_mut_h](crate::api::iox2_request_mut_h)s can be loaned at most at the same time with a [iox2_client_h](crate::api::iox2_client_h).
| c_size_t iox2_config_defaults_request_response_max_nodes | ( | iox2_config_h_ref | handle | ) |
Returns how many [iox2_node_h](crate::api::iox2_node_h)s can open the same service at the same time.
| c_size_t iox2_config_defaults_request_response_max_response_buffer_size | ( | iox2_config_h_ref | handle | ) |
Returns the size of the [iox2_response_h](crate::api::iox2_response_h) buffer per request on the [iox2_client_h](crate::api::iox2_client_h) side. This is an important setting when a stream of responses is expected.
| c_size_t iox2_config_defaults_request_response_max_servers | ( | iox2_config_h_ref | handle | ) |
Returns how many [iox2_server_h](crate::api::iox2_server_h)s can be connected to the same service at the same time.
| int iox2_config_defaults_request_response_server_backpressure_strategy | ( | iox2_config_h_ref | handle | ) |
If safe overflow is deactivated it defines the deliver strategy of the [iox2_server_h](crate::api::iox2_server_h) when the [iox2_client_h](crate::api::iox2_client_h)s response buffer is full.
Returns [iox2_backpressure_strategy_e]
| c_size_t iox2_config_defaults_request_response_server_expired_connection_buffer | ( | iox2_config_h_ref | handle | ) |
Returns the expired connection buffer size for [iox2_serve_h](crate::api::iox2_server_h) to retrieve [iox2_active_request_h](crate::api::iox2_active_request_h) from disconnected [iox2_client_h](crate::api::iox2_client_h)
| c_size_t iox2_config_defaults_request_response_server_max_loaned_responses_per_request | ( | iox2_config_h_ref | handle | ) |
Returns how many [iox2_response_mut_h](crate::api::iox2_response_mut_h)s can be loaned at most at the same time with a [iox2_server_h](crate::api::iox2_server_h) per request.
| void iox2_config_defaults_request_response_set_client_backpressure_strategy | ( | iox2_config_h_ref | handle, |
| enum iox2_backpressure_strategy_e | value ) |
Defines the backpressure strategy for the [iox2_client_h](crate::api::iox2_client_h).
| void iox2_config_defaults_request_response_set_client_expired_connection_buffer | ( | iox2_config_h_ref | handle, |
| c_size_t | value ) |
Sets the expired connection buffer size for [iox2_client_h](crate::api::iox2_client_h).
| void iox2_config_defaults_request_response_set_enable_safe_overflow_for_requests | ( | iox2_config_h_ref | handle, |
| bool | value ) |
| void iox2_config_defaults_request_response_set_enable_safe_overflow_for_responses | ( | iox2_config_h_ref | handle, |
| bool | value ) |
Enables/disables safe overflow for responses
| void iox2_config_defaults_request_response_set_fire_and_forget_requests | ( | iox2_config_h_ref | handle, |
| bool | value ) |
Defines if request response services shall support fire and forget requests.
| void iox2_config_defaults_request_response_set_max_active_requests_per_client | ( | iox2_config_h_ref | handle, |
| c_size_t | value ) |
| void iox2_config_defaults_request_response_set_max_borrowed_responses_per_pending_response | ( | iox2_config_h_ref | handle, |
| c_size_t | value ) |
Sets the maximum number of borrowed responses per pending response
| void iox2_config_defaults_request_response_set_max_clients | ( | iox2_config_h_ref | handle, |
| c_size_t | value ) |
Sets the maximum number of clients per service
| void iox2_config_defaults_request_response_set_max_loaned_requests | ( | iox2_config_h_ref | handle, |
| c_size_t | value ) |
| void iox2_config_defaults_request_response_set_max_nodes | ( | iox2_config_h_ref | handle, |
| c_size_t | value ) |
Sets the maximum number of nodes per service
| void iox2_config_defaults_request_response_set_max_response_buffer_size | ( | iox2_config_h_ref | handle, |
| c_size_t | value ) |
| void iox2_config_defaults_request_response_set_max_servers | ( | iox2_config_h_ref | handle, |
| c_size_t | value ) |
Sets the maximum number of servers per service
| void iox2_config_defaults_request_response_set_server_backpressure_strategy | ( | iox2_config_h_ref | handle, |
| enum iox2_backpressure_strategy_e | value ) |
Defines the backpressure strategy for the [iox2_server_h](crate::api::iox2_server_h).
| void iox2_config_defaults_request_response_set_server_expired_connection_buffer | ( | iox2_config_h_ref | handle, |
| c_size_t | value ) |
Sets the expired connection buffer size for [iox2_server_h](crate::api::iox2_server_h).
| void iox2_config_defaults_request_response_set_server_max_loaned_responses_per_request | ( | iox2_config_h_ref | handle, |
| c_size_t | value ) |
Sets the maximum number of loaned responses per request
| void iox2_config_drop | ( | iox2_config_h | handle | ) |
Takes ownership of the handle and releases all underlying resources.
| int iox2_config_from_file | ( | struct iox2_config_t * | struct_ptr, |
| iox2_config_h * | handle_ptr, | ||
| const char * | config_file ) |
Creates an iceoryx2 config populated values from the provided file.
| void iox2_config_from_ptr | ( | iox2_config_ptr | config, |
| struct iox2_config_t * | struct_ptr, | ||
| iox2_config_h * | handle_ptr ) |
Clones a config from the provided [iox2_config_ptr].
| iox2_config_ptr iox2_config_global_config | ( | void | ) |
Returns a pointer to the global config
| void iox2_config_global_creation_timeout | ( | iox2_config_h_ref | handle, |
| uint64_t * | secs, | ||
| uint32_t * | nsecs ) |
Returns the duration how long another process will wait until an entity like a Node or Service creation is finalized
| bool iox2_config_global_node_cleanup_dead_nodes_on_creation | ( | iox2_config_h_ref | handle | ) |
When true, [iox2_node_builder_create()](crate::api::iox2_node_builder_create) checks for dead nodes and cleans up all their stale resources whenever a new [iox2_node_h](crate::api::iox2_node_h) is created.
| bool iox2_config_global_node_cleanup_dead_nodes_on_destruction | ( | iox2_config_h_ref | handle | ) |
When true, the [iox2_node_builder_create()](crate::api::iox2_node_builder_create) checks for dead nodes and cleans up all their stale resources whenever an existing [iox2_node_h](crate::api::iox2_node_h) is going out of scope.
| const char * iox2_config_global_node_directory | ( | iox2_config_h_ref | handle | ) |
Returns the directory in which all node files are stored
| const char * iox2_config_global_node_global_mgmt_suffix | ( | iox2_config_h_ref | handle | ) |
Returns the suffix of the global management segment.
| const char * iox2_config_global_node_monitor_suffix | ( | iox2_config_h_ref | handle | ) |
| const char * iox2_config_global_node_port_tag_suffix | ( | iox2_config_h_ref | handle | ) |
| const char * iox2_config_global_node_service_tag_suffix | ( | iox2_config_h_ref | handle | ) |
| void iox2_config_global_node_set_cleanup_dead_nodes_on_creation | ( | iox2_config_h_ref | handle, |
| bool | value ) |
Enable/disable the cleanup dead nodes on creation
| void iox2_config_global_node_set_cleanup_dead_nodes_on_destruction | ( | iox2_config_h_ref | handle, |
| bool | value ) |
Enable/disable the cleanup dead nodes on destruction
| int iox2_config_global_node_set_directory | ( | iox2_config_h_ref | handle, |
| const char * | value ) |
Sets the directory in which all node files are stored
Returns: [iox2_semantic_string_error_e](crate::api::iox2_semantic_string_error_e) when an invalid path was provided
| int iox2_config_global_node_set_global_mgmt_suffix | ( | iox2_config_h_ref | handle, |
| const char * | value ) |
Sets the suffix of the global management segment.
Returns: [iox2_semantic_string_error_e](crate::api::iox2_semantic_string_error_e) when an invalid file name was provided
| int iox2_config_global_node_set_monitor_suffix | ( | iox2_config_h_ref | handle, |
| const char * | value ) |
Sets the suffix of the monitor token
Returns: [iox2_semantic_string_error_e](crate::api::iox2_semantic_string_error_e) when an invalid file name was provided
| int iox2_config_global_node_set_port_tag_suffix | ( | iox2_config_h_ref | handle, |
| const char * | value ) |
Sets the suffix of the port tags.
Returns: [iox2_semantic_string_error_e](crate::api::iox2_semantic_string_error_e) when an invalid file name was provided
| int iox2_config_global_node_set_service_tag_suffix | ( | iox2_config_h_ref | handle, |
| const char * | value ) |
Sets the suffix of the service tags.
Returns: [iox2_semantic_string_error_e](crate::api::iox2_semantic_string_error_e) when an invalid file name was provided
| int iox2_config_global_node_set_static_config_suffix | ( | iox2_config_h_ref | handle, |
| const char * | value ) |
Sets the suffix of the files where the node configuration is stored.
Returns: [iox2_semantic_string_error_e](crate::api::iox2_semantic_string_error_e) when an invalid file name was provided
| const char * iox2_config_global_node_static_config_suffix | ( | iox2_config_h_ref | handle | ) |
Returns the suffix of the files where the node configuration is stored.
| const char * iox2_config_global_prefix | ( | iox2_config_h_ref | handle | ) |
Returns the prefix used for all files created during runtime
| const char * iox2_config_global_root_path | ( | iox2_config_h_ref | handle | ) |
Returns the path under which all other directories or files will be created
| const char * iox2_config_global_service_blackboard_data_suffix | ( | iox2_config_h_ref | handle | ) |
Returns the suffix of the blackboard payload data segment
| const char * iox2_config_global_service_blackboard_mgmt_suffix | ( | iox2_config_h_ref | handle | ) |
Returns the suffix of the blackboard management data segment
| bool iox2_config_global_service_cleanup_dead_nodes_on_open | ( | iox2_config_h_ref | handle | ) |
Returns if a dead node cleanup is performed whenever an existing service is opened by the builder.
| const char * iox2_config_global_service_connection_suffix | ( | iox2_config_h_ref | handle | ) |
| const char * iox2_config_global_service_data_segment_suffix | ( | iox2_config_h_ref | handle | ) |
Returns the suffix of the ports data segment
| const char * iox2_config_global_service_directory | ( | iox2_config_h_ref | handle | ) |
Returns the directory in which all service files are stored
| const char * iox2_config_global_service_dynamic_config_storage_suffix | ( | iox2_config_h_ref | handle | ) |
Returns the suffix of the dynamic config file
| const char * iox2_config_global_service_event_connection_suffix | ( | iox2_config_h_ref | handle | ) |
Returns the suffix of a one-to-one connection
| const char * iox2_config_global_service_flatbuffer_schema_path | ( | iox2_config_h_ref | handle | ) |
Returns the directory which will be used to automatically lookup flatbuffer schema files. If no directory was defined it returns a nullptr.
| int iox2_config_global_service_set_blackboard_data_suffix | ( | iox2_config_h_ref | handle, |
| const char * | value ) |
Sets the suffix of the blackboard payload data segment
Returns: [iox2_semantic_string_error_e](crate::api::iox2_semantic_string_error_e) when an invalid file name was provided
| int iox2_config_global_service_set_blackboard_mgmt_suffix | ( | iox2_config_h_ref | handle, |
| const char * | value ) |
Sets the suffix of the blackboard management data segment
Returns: [iox2_semantic_string_error_e](crate::api::iox2_semantic_string_error_e) when an invalid file name was provided
| void iox2_config_global_service_set_cleanup_dead_nodes_on_open | ( | iox2_config_h_ref | handle, |
| bool | value ) |
Sets if a dead node cleanup is performed whenever an existing service is opened by the builder.
| int iox2_config_global_service_set_connection_suffix | ( | iox2_config_h_ref | handle, |
| const char * | value ) |
Set the suffix of a one-to-one connection
Returns: [iox2_semantic_string_error_e](crate::api::iox2_semantic_string_error_e) when an invalid file name was provided
| int iox2_config_global_service_set_data_segment_suffix | ( | iox2_config_h_ref | handle, |
| const char * | value ) |
Sets the suffix of the ports data segment
Returns: [iox2_semantic_string_error_e](crate::api::iox2_semantic_string_error_e) when an invalid file name was provided
| int iox2_config_global_service_set_directory | ( | iox2_config_h_ref | handle, |
| const char * | value ) |
Sets the directory in which all service files are stored
Returns: [iox2_semantic_string_error_e](crate::api::iox2_semantic_string_error_e) when an invalid path was provided
| int iox2_config_global_service_set_dynamic_config_storage_suffix | ( | iox2_config_h_ref | handle, |
| const char * | value ) |
Sets the suffix of the dynamic config file
Returns: [iox2_semantic_string_error_e](crate::api::iox2_semantic_string_error_e) when an invalid file name was provided
| int iox2_config_global_service_set_event_connection_suffix | ( | iox2_config_h_ref | handle, |
| const char * | value ) |
Sets the suffix of a one-to-one connection
Returns: [iox2_semantic_string_error_e](crate::api::iox2_semantic_string_error_e) when an invalid file name was provided
| int iox2_config_global_service_set_flatbuffer_schema_path | ( | iox2_config_h_ref | handle, |
| const char * | value ) |
Sets the directory which will be used to automatically lookup flatbuffer schema files. If the provided string literal is a nullptr, the path will be unset.
Returns: [iox2_semantic_string_error_e](crate::api::iox2_semantic_string_error_e) when an invalid path was provided
| int iox2_config_global_service_set_static_config_storage_suffix | ( | iox2_config_h_ref | handle, |
| const char * | value ) |
Sets the suffix of the static config file
Returns: [iox2_semantic_string_error_e](crate::api::iox2_semantic_string_error_e) when an invalid file name was provided
| const char * iox2_config_global_service_static_config_storage_suffix | ( | iox2_config_h_ref | handle | ) |
Returns the suffix of the static config file
| void iox2_config_global_set_creation_timeout | ( | iox2_config_h_ref | handle, |
| uint64_t | sec, | ||
| uint32_t | nsec ) |
Sets the creation timeout
| int iox2_config_global_set_prefix | ( | iox2_config_h_ref | handle, |
| const char * | value ) |
Sets the prefix used for all files created during runtime
Returns: [iox2_semantic_string_error_e](crate::api::iox2_semantic_string_error_e) when an invalid file name was provided
| int iox2_config_global_set_root_path | ( | iox2_config_h_ref | handle, |
| const char * | value ) |
Sets the path under which all other directories or files will be created
Returns: [iox2_semantic_string_error_e](crate::api::iox2_semantic_string_error_e) when an invalid path was provided
| int iox2_config_setup_global_config_from_file | ( | iox2_config_ptr * | handle_ptr, |
| const char * | config_file ) |
Creates an iceoryx2 config, populated values from the provided file and sets it as global default.
| const char * iox2_connection_failure_string | ( | enum iox2_connection_failure_e | error | ) |
Returns a string literal describing the provided [iox2_connection_failure_e].
A pointer to a null-terminated string containing the error message. The string is stored in the .rodata section of the binary.
The returned pointer must not be modified or freed and is valid as long as the program runs.
| int iox2_dead_node_blocking_remove_stale_resources | ( | enum iox2_service_type_e | service_type, |
| iox2_unique_node_id_h_ref | node_id, | ||
| iox2_config_h_ref | config, | ||
| uint64_t | timeout_sec, | ||
| uint32_t | timeout_nsec ) |
Removes all stale resources of a dead node under a provided config. If another instance is already removing the stale resources it waits until the resources are cleaned up or the timeout has passed.
Returns [IOX2_OK] on success, otherwise [iox2_node_cleanup_failure_e].
| int iox2_dead_node_try_remove_stale_resources | ( | enum iox2_service_type_e | service_type, |
| iox2_unique_node_id_h_ref | node_id, | ||
| iox2_config_h_ref | config ) |
Removes all stale resources of a dead node under a provided config.
Returns [IOX2_OK] on success, otherwise [iox2_node_cleanup_failure_e].
| void iox2_degradation_info_receiver_port_id | ( | iox2_degradation_info_h_ref | info_handle, |
| struct iox2_buffer_16_align_4_t * | receiver_port_id ) |
Obtains the receiver port id, which is involved in the degradation
References iox2_buffer_16_align_4_t.
| void iox2_degradation_info_sender_port_id | ( | iox2_degradation_info_h_ref | info_handle, |
| struct iox2_buffer_16_align_4_t * | sender_port_id ) |
Obtains the sender port id, which is involved in the degradation
References iox2_buffer_16_align_4_t.
| void iox2_degradation_info_service_id | ( | iox2_degradation_info_h_ref | info_handle, |
| struct iox2_buffer_16_align_4_t * | service_id ) |
Obtains the service id, which is involved in the degradation
References iox2_buffer_16_align_4_t.
| void iox2_entry_handle_drop | ( | iox2_entry_handle_h | entry_handle_handle | ) |
This function needs to be called to destroy the entry handle!
| void iox2_entry_handle_entry_id | ( | iox2_entry_handle_h_ref | entry_handle_handle, |
| struct iox2_event_id_t * | entry_id ) |
Returns an id corresponding to the entry which can be used in an event based communication setup.
| const char * iox2_entry_handle_error_string | ( | enum iox2_entry_handle_error_e | error | ) |
Returns a string literal describing the provided [iox2_entry_handle_error_e].
A pointer to a null-terminated string containing the error message. The string is stored in the .rodata section of the binary.
The returned pointer must not be modified or freed and is valid as long as the program runs.
| void iox2_entry_handle_get | ( | iox2_entry_handle_h_ref | entry_handle_handle, |
| void * | value_ptr, | ||
| c_size_t | value_size, | ||
| c_size_t | value_alignment, | ||
| void * | generation_counter_ptr ) |
Copies the value to value_ptr. If a generation_counter_ptr is passed, a copy of the value's generation counter is stored in it which can be used to check for value updates.
| bool iox2_entry_handle_is_up_to_date | ( | iox2_entry_handle_h_ref | entry_handle_handle, |
| uint64_t | generation_counter ) |
Checks if the blackboard value that corresponds to the generation_counter is up-to-date.
| void iox2_entry_handle_mut_drop | ( | iox2_entry_handle_mut_h | entry_handle_mut_handle | ) |
This function needs to be called to destroy the entry handle mut!
| void iox2_entry_handle_mut_entry_id | ( | iox2_entry_handle_mut_h_ref | entry_handle_mut_handle, |
| struct iox2_event_id_t * | entry_id ) |
Returns an id corresponding to the entry which can be used in an event based communication setup.
| const char * iox2_entry_handle_mut_error_string | ( | enum iox2_entry_handle_mut_error_e | error | ) |
Returns a string literal describing the provided [iox2_entry_handle_mut_error_e].
A pointer to a null-terminated string containing the error message. The string is stored in the .rodata section of the binary.
The returned pointer must not be modified or freed and is valid as long as the program runs.
| void iox2_entry_handle_mut_loan_uninit | ( | iox2_entry_handle_mut_h | entry_handle_mut_handle, |
| struct iox2_entry_value_uninit_t * | entry_value_uninit_struct_ptr, | ||
| iox2_entry_value_uninit_h * | entry_value_uninit_handle_ptr, | ||
| size_t | value_size, | ||
| size_t | value_alignment ) |
Consumes the iox2_entry_handle_mut and loans an uninitialized entry value that can be used to update without copy.
| void iox2_entry_handle_mut_update_with_copy | ( | iox2_entry_handle_mut_h_ref | entry_handle_mut_handle, |
| void * | value_ptr, | ||
| size_t | value_size, | ||
| size_t | value_alignment ) |
Updates the entry value by copying the value pointed to by value_ptr
| void iox2_entry_value_uninit_discard | ( | iox2_entry_value_uninit_h | entry_value_uninit_handle, |
| struct iox2_entry_handle_mut_t * | entry_handle_mut_struct_ptr, | ||
| iox2_entry_handle_mut_h * | entry_handle_mut_handle_ptr ) |
Consumes and discards the entry value and returns the original entry handle mut.
| void iox2_entry_value_uninit_drop | ( | iox2_entry_value_uninit_h | entry_value_uninit_handle | ) |
This function needs to be called to destroy the entry value!
| void iox2_entry_value_uninit_update | ( | iox2_entry_value_uninit_h | entry_value_uninit_handle, |
| struct iox2_entry_handle_mut_t * | entry_handle_mut_struct_ptr, | ||
| iox2_entry_handle_mut_h * | entry_handle_mut_handle_ptr ) |
Consumes the entry value, makes the new value readable for [iox2_reader_t](crate::iox2_reader_t) and returns the original entry handle mut.
| void iox2_entry_value_uninit_value_mut | ( | iox2_entry_value_uninit_h_ref | entry_value_uninit_handle, |
| void ** | value_ptr ) |
Acquires the entrie's mutable value. After writing the value, [iox2_entry_value_uninit_update()] must be called.
| const char * iox2_event_open_or_create_error_string | ( | enum iox2_event_open_or_create_error_e | error | ) |
Returns a string literal describing the provided [iox2_event_open_or_create_error_e].
A pointer to a null-terminated string containing the error message. The string is stored in the .rodata section of the binary.
The returned pointer must not be modified or freed and is valid as long as the program runs.
| void iox2_file_descriptor_drop | ( | iox2_file_descriptor_h | handle | ) |
Releases a [iox2_file_descriptor_h].
| int32_t iox2_file_descriptor_native_handle | ( | iox2_file_descriptor_ptr | handle | ) |
Returns the underlying native file descriptor value. When the [iox2_file_descriptor_h_ref] is owning the file descriptor, the native value is valid until [iox2_file_descriptor_drop()] is called.
| bool iox2_file_descriptor_new | ( | int32_t | value, |
| bool | is_owned, | ||
| struct iox2_file_descriptor_t * | struct_ptr, | ||
| iox2_file_descriptor_h * | handle_ptr ) |
Creates a new [iox2_file_descriptor_t].
Returns true, when the [iox2_file_descriptor_h] was initialized successfully. If the user provided an invalid file descriptor it returns false.
| enum iox2_log_level_e iox2_get_log_level | ( | void | ) |
Returns the current log level.
| int iox2_listener_blocking_wait | ( | iox2_listener_h_ref | listener_handle, |
| uint64_t * | number_of_notifications, | ||
| iox2_listener_wait_all_callback | callback, | ||
| iox2_callback_context | callback_ctx ) |
Blocks the listener until at least one event was received and then calls the callback for every received event providing the corresponding [iox2_event_id_t] pointer to the event. On error it returns [iox2_listener_wait_error_e].
| const char * iox2_listener_create_error_string | ( | enum iox2_listener_create_error_e | error | ) |
Returns a string literal describing the provided [iox2_listener_create_error_e].
A pointer to a null-terminated string containing the error message. The string is stored in the .rodata section of the binary.
The returned pointer must not be modified or freed and is valid as long as the program runs.
| bool iox2_listener_deadline | ( | iox2_listener_h_ref | listener_handle, |
| uint64_t * | seconds, | ||
| uint32_t * | nanoseconds ) |
Returns the deadline of the listener's service. If there is a deadline set, the provided arguments seconds and nanoseconds will be set true is returned. Otherwise, false is returned and nothing is set.
| void iox2_listener_details_listener_id | ( | iox2_listener_details_ptr | handle, |
| struct iox2_unique_listener_id_t * | id_struct_ptr, | ||
| iox2_unique_listener_id_h * | id_handle_ptr ) |
Returns the unique port id of the listener.
| iox2_port_name_ptr iox2_listener_details_listener_name | ( | iox2_listener_details_ptr | handle | ) |
Returns the [iox2_port_name_ptr], an immutable pointer to the name of the listener.
| iox2_unique_node_id_ptr iox2_listener_details_node_id | ( | iox2_listener_details_ptr | handle | ) |
Returns the [iox2_unique_node_id_ptr], an immutable pointer to the node id.
| void iox2_listener_drop | ( | iox2_listener_h | listener_handle | ) |
This function needs to be called to destroy the listener!
| iox2_file_descriptor_ptr iox2_listener_get_file_descriptor | ( | iox2_listener_h_ref | listener_handle | ) |
Returns the underlying non-owning file descriptor of the [iox2_listener_h] if the [iox2_listener_h] is file descriptor based, otherwise it returns NULL.
| void iox2_listener_id | ( | iox2_listener_h_ref | listener_handle, |
| struct iox2_unique_listener_id_t * | id_struct_ptr, | ||
| iox2_unique_listener_id_h * | id_handle_ptr ) |
Returns the unique port id of the listener.
| iox2_port_name_ptr iox2_listener_name | ( | iox2_listener_h_ref | listener_handle | ) |
Returns the [iox2_port_name_ptr], an immutable pointer to the port name.
| int iox2_listener_timed_wait | ( | iox2_listener_h_ref | listener_handle, |
| uint64_t * | number_of_notifications, | ||
| iox2_listener_wait_all_callback | callback, | ||
| iox2_callback_context | callback_ctx, | ||
| uint64_t | seconds, | ||
| uint32_t | nanoseconds ) |
Blocks the listener until at least one event was received or the provided timeout has passed. When an event was received then it calls the callback for every received event providing the corresponding [iox2_event_id_t] pointer to the event. On error it returns [iox2_listener_wait_error_e].
| int iox2_listener_try_wait | ( | iox2_listener_h_ref | listener_handle, |
| uint64_t * | number_of_notifications, | ||
| iox2_listener_wait_all_callback | callback, | ||
| iox2_callback_context | callback_ctx ) |
Tries to wait on the listener and calls the callback for every received event providing the corresponding [iox2_event_id_t] pointer to the event. On error it returns [iox2_listener_wait_error_e].
| const char * iox2_listener_wait_error_string | ( | enum iox2_listener_wait_error_e | error | ) |
Returns a string representation of the provided [iox2_listener_wait_error_e] error code.
A pointer to a null-terminated string containing the error message. The string is stored in the .rodata section of the binary.
| const char * iox2_loan_error_string | ( | enum iox2_loan_error_e | error | ) |
Returns a string literal describing the provided [iox2_loan_error_e].
A pointer to a null-terminated string containing the error message. The string is stored in the .rodata section of the binary.
The returned pointer must not be modified or freed and is valid as long as the program runs.
| void iox2_log | ( | enum iox2_log_level_e | log_level, |
| const char * | origin, | ||
| const char * | message ) |
| void iox2_node_blocking_cleanup_dead_nodes | ( | iox2_node_h_ref | node_handle, |
| struct iox2_cleanup_state_t * | cleanup_state, | ||
| uint64_t | timeout_secs, | ||
| uint32_t | timeout_nsecs ) |
Removes the stale system resources of all dead nodes. The dead nodes are also removed from all registered services.
If a node cannot be cleaned up since the process has insufficient permissions then the node is skipped. If it is currently being cleaned up by another process then the cleaner will wait until the timeout as either passed or the cleaned was finished.
The timeout is applied to every individual dead node the function needs to wait on.
| int iox2_node_builder_create | ( | iox2_node_builder_h | node_builder_handle, |
| struct iox2_node_t * | node_struct_ptr, | ||
| enum iox2_service_type_e | service_type, | ||
| iox2_node_h * | node_handle_ptr ) |
Creates a node and consumes the builder
Returns IOX2_OK on success, an [iox2_node_creation_failure_e] otherwise.
| iox2_node_builder_h iox2_node_builder_new | ( | struct iox2_node_builder_t * | node_builder_struct_ptr | ) |
Creates a builder for nodes
A [iox2_node_builder_h] handle to build the actual node.
| void iox2_node_builder_set_config | ( | iox2_node_builder_h_ref | node_builder_handle, |
| iox2_config_h_ref | config_handle ) |
Sets the node config for the builder
Returns IOX2_OK
| void iox2_node_builder_set_name | ( | iox2_node_builder_h_ref | node_builder_handle, |
| iox2_node_name_ptr | node_name_ptr ) |
Sets the node name for the builder
| void iox2_node_builder_set_signal_handling_mode | ( | iox2_node_builder_h_ref | node_builder_handle, |
| enum iox2_signal_handling_mode_e | signal_handling_mode ) |
Sets the [iox2_signal_handling_mode_e] for the [iox2_node_h].
| iox2_config_ptr iox2_node_config | ( | iox2_node_h_ref | node_handle | ) |
Returns the [iox2_config_ptr], an immutable pointer to the config.
| const char * iox2_node_creation_failure_string | ( | enum iox2_node_creation_failure_e | error | ) |
Returns a string literal describing the provided [iox2_node_creation_failure_e].
A pointer to a null-terminated string containing the error message. The string is stored in the .rodata section of the binary.
The returned pointer must not be modified or freed and is valid as long as the program runs.
| void iox2_node_drop | ( | iox2_node_h | node_handle | ) |
This function needs to be called to destroy the node!
| int iox2_node_force_remove_service | ( | iox2_node_h_ref | node_handle, |
| iox2_service_name_ptr | service_name_ptr, | ||
| enum iox2_messaging_pattern_e | messaging_pattern, | ||
| bool * | service_removed ) |
Removes a service by force. This shall be used if the resources could not be removed in a previous run and now it is no longer possible to open the service.
| int iox2_node_list | ( | enum iox2_service_type_e | service_type, |
| iox2_config_ptr | config_ptr, | ||
| iox2_node_list_callback | callback, | ||
| iox2_callback_context | callback_ctx ) |
Calls the callback repeatedly with an [iox2_node_state_e], [iox2_unique_node_id_ptr], [´iox2_node_name_ptr´] and [iox2_config_ptr] for all [Node]s in the system under a given [Config].
Returns IOX2_OK on success, an [iox2_node_list_failure_e] otherwise.
| const char * iox2_node_list_failure_string | ( | enum iox2_node_list_failure_e | error | ) |
Returns a string representation of the [iox2_node_list_failure_e] error code.
Returns a pointer to a null-terminated string containing the error description.
| iox2_node_name_ptr iox2_node_name | ( | iox2_node_h_ref | node_handle | ) |
Returns the [iox2_node_name_ptr], an immutable pointer to the node name.
| const char * iox2_node_name_as_chars | ( | iox2_node_name_ptr | node_name_ptr, |
| c_size_t * | node_name_len ) |
This function gives access to the node name as a non-zero-terminated char array
Returns a non-zero-terminated char array
| void iox2_node_name_drop | ( | iox2_node_name_h | node_name_handle | ) |
This function needs to be called to destroy the node name!
| int iox2_node_name_new | ( | struct iox2_node_name_t * | node_name_struct_ptr, |
| const char * | node_name_str, | ||
| c_size_t | node_name_len, | ||
| iox2_node_name_h * | node_name_handle_ptr ) |
This function create a new node name!
Returns IOX2_OK on success, an [iox2_semantic_string_error_e] otherwise.
| iox2_service_builder_h iox2_node_service_builder | ( | iox2_node_h_ref | node_handle, |
| struct iox2_service_builder_t * | service_builder_struct_ptr, | ||
| iox2_service_name_ptr | service_name_ptr ) |
Returns the iox2_service_builder_h handle for the service builder.
| enum iox2_signal_handling_mode_e iox2_node_signal_handling_mode | ( | iox2_node_h_ref | node_handle | ) |
Returns the [iox2_signal_handling_mode_e] with which the node was created.
| void iox2_node_try_cleanup_dead_nodes | ( | iox2_node_h_ref | node_handle, |
| struct iox2_cleanup_state_t * | cleanup_state ) |
Removes the stale system resources of all dead nodes. The dead nodes are also removed from all registered services.
If a node cannot be cleaned up since the process has insufficient permissions or it is currently being cleaned up by another process then the node is skipped.
| int iox2_node_wait | ( | iox2_node_h_ref | node_handle, |
| uint64_t | cycle_time_sec, | ||
| uint32_t | cycle_time_nsec ) |
Wait until the provided cycle time has passed and returns a [iox2_node_wait_failure_e] enum containing the event that has occurred.
| const char * iox2_node_wait_failure_string | ( | enum iox2_node_wait_failure_e | error | ) |
Returns a string representation of the [iox2_node_wait_failure_e] error code.
A pointer to a null-terminated string containing the error message. The string is stored in the .rodata section of the binary.
| iox2_waitset_builder_h iox2_node_waitset_builder | ( | iox2_node_h_ref | node_handle, |
| struct iox2_waitset_builder_t * | waitset_builder_struct_ptr ) |
Returns the iox2_waitset_builder_h handle for the waitset builder.
| const char * iox2_notifier_create_error_string | ( | enum iox2_notifier_create_error_e | error | ) |
Returns a string literal describing the provided [iox2_notifier_create_error_e].
A pointer to a null-terminated string containing the error message. The string is stored in the .rodata section of the binary.
The returned pointer must not be modified or freed and is valid as long as the program runs.
| bool iox2_notifier_deadline | ( | iox2_notifier_h_ref | notifier_handle, |
| uint64_t * | seconds, | ||
| uint32_t * | nanoseconds ) |
Returns the deadline of the notifier's service. If there is a deadline set, the provided arguments seconds and nanoseconds will be set true is returned. Otherwise, false is returned and nothing is set.
| iox2_unique_node_id_ptr iox2_notifier_details_node_id | ( | iox2_notifier_details_ptr | handle | ) |
Returns the [iox2_unique_node_id_ptr], an immutable pointer to the node id.
| void iox2_notifier_details_notifier_id | ( | iox2_notifier_details_ptr | handle, |
| struct iox2_unique_notifier_id_t * | id_struct_ptr, | ||
| iox2_unique_notifier_id_h * | id_handle_ptr ) |
Returns the unique port id of the notifier.
| iox2_port_name_ptr iox2_notifier_details_notifier_name | ( | iox2_notifier_details_ptr | handle | ) |
Returns the [iox2_port_name_ptr], an immutable pointer to the name of the notifier.
| void iox2_notifier_drop | ( | iox2_notifier_h | notifier_handle | ) |
This function needs to be called to destroy the notifier!
| void iox2_notifier_id | ( | iox2_notifier_h_ref | notifier_handle, |
| struct iox2_unique_notifier_id_t * | id_struct_ptr, | ||
| iox2_unique_notifier_id_h * | id_handle_ptr ) |
Returns the unique port id of the notifier.
| iox2_port_name_ptr iox2_notifier_name | ( | iox2_notifier_h_ref | notifier_handle | ) |
Returns the [iox2_port_name_ptr], an immutable pointer to the port name.
| int iox2_notifier_notify | ( | iox2_notifier_h_ref | notifier_handle, |
| c_size_t * | number_of_notified_listener_ptr ) |
Notifies all [iox2_listener_h](crate::iox2_listener_h) connected to the service with the default event id provided on creation.
Returns IOX2_OK on success, an [iox2_notifier_notify_error_e] otherwise.
notifier_handle must be a valid handle and is still valid after the return of this function and can be use in another function call.
| const char * iox2_notifier_notify_error_string | ( | enum iox2_notifier_notify_error_e | error | ) |
Returns a string literal describing the provided [iox2_notifier_notify_error_e].
A pointer to a null-terminated string containing the error message. The string is stored in the .rodata section of the binary.
The returned pointer must not be modified or freed and is valid as long as the program runs.
| int iox2_notifier_notify_with_custom_event_id | ( | iox2_notifier_h_ref | notifier_handle, |
| const struct iox2_event_id_t * | custom_event_id_ptr, | ||
| c_size_t * | number_of_notified_listener_ptr ) |
Notifies all [iox2_listener_h](crate::iox2_listener_h) connected to the service with the custom event id.
Returns IOX2_OK on success, an [iox2_notifier_notify_error_e] otherwise.
notifier_handle must be a valid handle and is still valid after the return of this function and can be use in another function call. custom_event_id_ptr must not be a NULL pointer.
| void iox2_pending_response_drop | ( | iox2_pending_response_h | handle | ) |
This function needs to be called to destroy the pending response!
| bool iox2_pending_response_has_response | ( | iox2_pending_response_h_ref | handle | ) |
Returns true if there is a response in the buffer, otherwise false.
| void iox2_pending_response_header | ( | iox2_pending_response_h_ref | handle, |
| struct iox2_request_header_t * | header_struct_ptr, | ||
| iox2_request_header_h * | header_handle_ptr ) |
Acquires the requests header.
| bool iox2_pending_response_is_connected | ( | iox2_pending_response_h_ref | handle | ) |
Returns true if the corresponding active request is still connected and responses can send further responses, otherwise false.
| c_size_t iox2_pending_response_number_of_server_connections | ( | iox2_pending_response_h_ref | handle | ) |
Returns how many servers received the corresponding request initially.
| void iox2_pending_response_payload | ( | iox2_pending_response_h_ref | handle, |
| const void ** | payload_ptr, | ||
| c_size_t * | number_of_elements ) |
Acquires the requests payload.
| int iox2_pending_response_receive | ( | iox2_pending_response_h_ref | handle, |
| struct iox2_response_t * | response_struct_ptr, | ||
| iox2_response_h * | response_handle_ptr ) |
Takes a response out of the buffer.
Returns IOX2_OK on success, an [iox2_receive_error_e](crate::iox2_receive_error_e) otherwise. Attention, an empty response buffer is not an error and even with IOX2_OK it is possible to get a NULL in response_handle_ptr.
| void iox2_pending_response_set_disconnect_hint | ( | iox2_pending_response_h_ref | handle | ) |
Marks the connection state that the Client wants to gracefully disconnect. When the server reads it, it can send the last response and drop the corresponding active request to terminate the connection ensuring that no response is lost on the client side.
| void iox2_pending_response_user_header | ( | iox2_pending_response_h_ref | handle, |
| const void ** | header_ptr ) |
Acquires the requests user header.
| iox2_attribute_set_ptr iox2_port_factory_blackboard_attributes | ( | iox2_port_factory_blackboard_h_ref | port_factory_handle | ) |
Returns the service attributes.
| void iox2_port_factory_blackboard_blocking_cleanup_dead_nodes | ( | iox2_port_factory_blackboard_h_ref | port_factory_handle, |
| struct iox2_cleanup_state_t * | cleanup_state, | ||
| uint64_t | timeout_secs, | ||
| uint32_t | timeout_nsecs ) |
Removes the stale system resources of all dead nodes connected to this service.
If a node cannot be cleaned up since the process has insufficient permissions then the node is skipped. If it is currently being cleaned up by another process then the cleaner will wait until the timeout as either passed or the cleaned was finished.
The timeout is applied to every individual dead node the function needs to wait on.
| void iox2_port_factory_blackboard_drop | ( | iox2_port_factory_blackboard_h | port_factory_handle | ) |
This function needs to be called to destroy the port factory!
| void iox2_port_factory_blackboard_dynamic_config_list_readers | ( | iox2_port_factory_blackboard_h_ref | handle, |
| iox2_list_readers_callback | callback, | ||
| iox2_callback_context | callback_ctx ) |
Calls the callback repeatedly for every connected [iox2_reader_h](crate::iox2_reader_h) and provides all communication details with a [iox2_reader_details_ptr].
| void iox2_port_factory_blackboard_dynamic_config_list_writers | ( | iox2_port_factory_blackboard_h_ref | handle, |
| iox2_list_writers_callback | callback, | ||
| iox2_callback_context | callback_ctx ) |
Calls the callback repeatedly for every connected [iox2_writer_h](crate::iox2_writer_h) and provides all communication details with a [iox2_writer_details_ptr].
| size_t iox2_port_factory_blackboard_dynamic_config_number_of_readers | ( | iox2_port_factory_blackboard_h_ref | handle | ) |
Returns how many reader ports are currently connected.
| size_t iox2_port_factory_blackboard_dynamic_config_number_of_writers | ( | iox2_port_factory_blackboard_h_ref | handle | ) |
Returns how many writer ports are currently connected.
| void iox2_port_factory_blackboard_list_keys | ( | iox2_port_factory_blackboard_h_ref | handle, |
| iox2_port_factory_blackboard_list_keys_callback | callback, | ||
| iox2_callback_context | callback_ctx ) |
Iterates over all keys of the blackboard and calls the provided callback with a void pointer to the key as argument.
| int iox2_port_factory_blackboard_nodes | ( | iox2_port_factory_blackboard_h_ref | handle, |
| iox2_node_list_callback | callback, | ||
| iox2_callback_context | callback_ctx ) |
Calls the callback repeatedly with an [iox2_node_state_e](crate::api::iox2_node_state_e), [iox2_unique_node_id_ptr](crate::api::iox2_unique_node_id_ptr), [´iox2_node_name_ptr´](crate::api::iox2_node_name_ptr) and [iox2_config_ptr](crate::api::iox2_config_ptr) for all [Node](iceoryx2::node::Node)s that have opened the service.
Returns IOX2_OK on success, an [iox2_node_list_failure_e](crate::api::iox2_node_list_failure_e) otherwise.
| iox2_port_factory_reader_builder_h iox2_port_factory_blackboard_reader_builder | ( | iox2_port_factory_blackboard_h_ref | port_factory_handle, |
| struct iox2_port_factory_reader_builder_t * | reader_builder_struct_ptr ) |
Instantiates a [iox2_port_factory_reader_builder_h] to build a reader.
Returns the [iox2_port_factory_reader_builder_h] handle for the reader builder.
| void iox2_port_factory_blackboard_service_hash | ( | iox2_port_factory_blackboard_h_ref | handle, |
| char * | buffer, | ||
| size_t | buffer_len ) |
Stores the service hash in the provided buffer
| iox2_service_name_ptr iox2_port_factory_blackboard_service_name | ( | iox2_port_factory_blackboard_h_ref | handle | ) |
Returns the [iox2_service_name_ptr], an immutable pointer to the service name.
| void iox2_port_factory_blackboard_static_config | ( | iox2_port_factory_blackboard_h_ref | port_factory_handle, |
| struct iox2_static_config_blackboard_t * | static_config ) |
Sets the values in the provided [iox2_static_config_blackboard_t] pointer.
| void iox2_port_factory_blackboard_try_cleanup_dead_nodes | ( | iox2_port_factory_blackboard_h_ref | port_factory_handle, |
| struct iox2_cleanup_state_t * | cleanup_state ) |
Removes the stale system resources of all dead nodes connected to this service.
If a node cannot be cleaned up since the process has insufficient permissions or it is currently being cleaned up by another process then the node is skipped.
| iox2_port_factory_writer_builder_h iox2_port_factory_blackboard_writer_builder | ( | iox2_port_factory_blackboard_h_ref | port_factory_handle, |
| struct iox2_port_factory_writer_builder_t * | writer_builder_struct_ptr ) |
Instantiates a [iox2_port_factory_writer_builder_h] to build a writer.
Returns the iox2_port_factory_writer_builder_h handle for the writer builder.
| void iox2_port_factory_client_builder_backpressure_strategy | ( | iox2_port_factory_client_builder_h_ref | port_factory_handle, |
| enum iox2_backpressure_strategy_e | value ) |
Sets the backpressure strategy for the client
| int iox2_port_factory_client_builder_create | ( | iox2_port_factory_client_builder_h | port_factory_handle, |
| struct iox2_client_t * | struct_ptr, | ||
| iox2_client_h * | handle_ptr ) |
Creates a client and consumes the builder
Returns IOX2_OK on success, an [iox2_client_create_error_e] otherwise.
| void iox2_port_factory_client_builder_override_requests_preallocation | ( | iox2_port_factory_client_builder_h_ref | port_factory_handle, |
| iox2_preallocated_requests_override | callback, | ||
| iox2_callback_context | callback_ctx ) |
Defines a callback to reduce the number of preallocated requests. The input argument is the worst case number of preallocated requests required to guarantee that the client never runs out of requests to loan and send. The return value is clamped between 1 and the worst case number of preallocated requests.
If the user reduces the number of preallocated requests, iceoryx2 can no longer guarantee, that the client can always loan a request to send.
| void iox2_port_factory_client_builder_set_allocation_strategy | ( | iox2_port_factory_client_builder_h_ref | port_factory_handle, |
| enum iox2_allocation_strategy_e | value ) |
Sets the [iox2_allocation_strategy_e] for the client
| void iox2_port_factory_client_builder_set_backpressure_handler | ( | iox2_port_factory_client_builder_h_ref | port_factory_handle, |
| iox2_backpressure_handler | handler, | ||
| iox2_callback_context | ctx ) |
Sets the backpressure handler for the client to be able to execute custom code if a request cannot be delivered
| void iox2_port_factory_client_builder_set_initial_max_slice_len | ( | iox2_port_factory_client_builder_h_ref | port_factory_handle, |
| c_size_t | value ) |
Sets the max slice length for the client
| void iox2_port_factory_client_builder_set_max_active_requests | ( | iox2_port_factory_client_builder_h_ref | port_factory_handle, |
| c_size_t | value ) |
Sets the maximal active requests for the client.
| void iox2_port_factory_client_builder_set_name | ( | iox2_port_factory_client_builder_h_ref | port_factory_handle, |
| iox2_port_name_ptr | port_name_ptr ) |
Sets the port name for the Client
| void iox2_port_factory_client_builder_set_request_degradation_handler | ( | iox2_port_factory_client_builder_h_ref | port_factory_handle, |
| iox2_degradation_handler | handler, | ||
| iox2_callback_context | ctx ) |
Sets the request degradation handler for the client
| void iox2_port_factory_client_builder_set_response_degradation_handler | ( | iox2_port_factory_client_builder_h_ref | port_factory_handle, |
| iox2_degradation_handler | handler, | ||
| iox2_callback_context | ctx ) |
Sets the response degradation handler for the client
| iox2_attribute_set_ptr iox2_port_factory_event_attributes | ( | iox2_port_factory_event_h_ref | port_factory_handle | ) |
| void iox2_port_factory_event_blocking_cleanup_dead_nodes | ( | iox2_port_factory_event_h_ref | port_factory_handle, |
| struct iox2_cleanup_state_t * | cleanup_state, | ||
| uint64_t | timeout_secs, | ||
| uint32_t | timeout_nsecs ) |
Removes the stale system resources of all dead nodes connected to this service.
If a node cannot be cleaned up since the process has insufficient permissions then the node is skipped. If it is currently being cleaned up by another process then the cleaner will wait until the timeout as either passed or the cleaned was finished.
The timeout is applied to every individual dead node the function needs to wait on.
| void iox2_port_factory_event_drop | ( | iox2_port_factory_event_h | port_factory_handle | ) |
This function needs to be called to destroy the port factory!
| void iox2_port_factory_event_dynamic_config_list_listeners | ( | iox2_port_factory_event_h_ref | handle, |
| iox2_list_listeners_callback | callback, | ||
| iox2_callback_context | callback_ctx ) |
Calls the callback repeatedly for every connected [iox2_listener_h](crate::iox2_listener_h) and provides all communication details with a [iox2_listener_details_ptr].
| void iox2_port_factory_event_dynamic_config_list_notifiers | ( | iox2_port_factory_event_h_ref | handle, |
| iox2_list_notifiers_callback | callback, | ||
| iox2_callback_context | callback_ctx ) |
Calls the callback repeatedly for every connected [iox2_notifier_h](crate::iox2_notifier_h) and provides all communication details with a [iox2_notifier_details_ptr].
| size_t iox2_port_factory_event_dynamic_config_number_of_listeners | ( | iox2_port_factory_event_h_ref | handle | ) |
Returns how many listener ports are currently connected.
| size_t iox2_port_factory_event_dynamic_config_number_of_notifiers | ( | iox2_port_factory_event_h_ref | handle | ) |
Returns how many notifier ports are currently connected.
| iox2_port_factory_listener_builder_h iox2_port_factory_event_listener_builder | ( | iox2_port_factory_event_h_ref | port_factory_handle, |
| struct iox2_port_factory_listener_builder_t * | listener_builder_struct_ptr ) |
Instantiates a [iox2_port_factory_listener_builder_h] to build a listener.
Returns the [iox2_port_factory_listener_builder_h] handle for the listener builder.
| int iox2_port_factory_event_nodes | ( | iox2_port_factory_event_h_ref | handle, |
| iox2_node_list_callback | callback, | ||
| iox2_callback_context | callback_ctx ) |
Calls the callback repeatedly with an [iox2_node_state_e](crate::api::iox2_node_state_e), [iox2_unique_node_id_ptr](crate::api::iox2_unique_node_id_ptr), [´iox2_node_name_ptr´](crate::api::iox2_node_name_ptr) and [iox2_config_ptr](crate::api::iox2_config_ptr) for all [Node](iceoryx2::node::Node)s that have opened the service.
Returns IOX2_OK on success, an [iox2_node_list_failure_e](crate::api::iox2_node_list_failure_e) otherwise.
| iox2_port_factory_notifier_builder_h iox2_port_factory_event_notifier_builder | ( | iox2_port_factory_event_h_ref | port_factory_handle, |
| struct iox2_port_factory_notifier_builder_t * | notifier_builder_struct_ptr ) |
Instantiates a [iox2_port_factory_notifier_builder_h] to build a notifier.
Returns the iox2_port_factory_notifier_builder_h handle for the notifier builder.
| void iox2_port_factory_event_service_hash | ( | iox2_port_factory_event_h_ref | handle, |
| char * | buffer, | ||
| size_t | buffer_len ) |
Stores the service hash in the provided buffer
| iox2_service_name_ptr iox2_port_factory_event_service_name | ( | iox2_port_factory_event_h_ref | port_factory_handle | ) |
Returns the [iox2_service_name_ptr], an immutable pointer to the service name.
| void iox2_port_factory_event_static_config | ( | iox2_port_factory_event_h_ref | port_factory_handle, |
| struct iox2_static_config_event_t * | static_config ) |
Set the values in the provided [iox2_static_config_event_t] pointer.
| void iox2_port_factory_event_try_cleanup_dead_nodes | ( | iox2_port_factory_event_h_ref | port_factory_handle, |
| struct iox2_cleanup_state_t * | cleanup_state ) |
Removes the stale system resources of all dead nodes connected to this service.
If a node cannot be cleaned up since the process has insufficient permissions or it is currently being cleaned up by another process then the node is skipped.
| int iox2_port_factory_listener_builder_create | ( | iox2_port_factory_listener_builder_h | port_factory_handle, |
| struct iox2_listener_t * | listener_struct_ptr, | ||
| iox2_listener_h * | listener_handle_ptr ) |
Creates a listener and consumes the builder
Returns IOX2_OK on success, an [iox2_listener_create_error_e] otherwise.
| void iox2_port_factory_listener_builder_set_name | ( | iox2_port_factory_listener_builder_h_ref | port_factory_handle, |
| iox2_port_name_ptr | port_name_ptr ) |
Sets the port name for the Listener
| int iox2_port_factory_notifier_builder_create | ( | iox2_port_factory_notifier_builder_h | port_factory_handle, |
| struct iox2_notifier_t * | notifier_struct_ptr, | ||
| iox2_notifier_h * | notifier_handle_ptr ) |
Creates a notifier and consumes the builder
Returns IOX2_OK on success, an [iox2_notifier_create_error_e] otherwise.
| void iox2_port_factory_notifier_builder_set_default_event_id | ( | iox2_port_factory_notifier_builder_h_ref | port_factory_handle, |
| const struct iox2_event_id_t * | value ) |
Sets the default event id for the builder
| void iox2_port_factory_notifier_builder_set_name | ( | iox2_port_factory_notifier_builder_h_ref | port_factory_handle, |
| iox2_port_name_ptr | port_name_ptr ) |
Sets the port name for the Notifier
| iox2_attribute_set_ptr iox2_port_factory_pub_sub_attributes | ( | iox2_port_factory_pub_sub_h_ref | port_factory_handle | ) |
| void iox2_port_factory_pub_sub_blocking_cleanup_dead_nodes | ( | iox2_port_factory_pub_sub_h_ref | port_factory_handle, |
| struct iox2_cleanup_state_t * | cleanup_state, | ||
| uint64_t | timeout_secs, | ||
| uint32_t | timeout_nsecs ) |
Removes the stale system resources of all dead nodes connected to this service.
If a node cannot be cleaned up since the process has insufficient permissions then the node is skipped. If it is currently being cleaned up by another process then the cleaner will wait until the timeout as either passed or the cleaned was finished.
The timeout is applied to every individual dead node the function needs to wait on.
| void iox2_port_factory_pub_sub_drop | ( | iox2_port_factory_pub_sub_h | port_factory_handle | ) |
This function needs to be called to destroy the port factory!
| void iox2_port_factory_pub_sub_dynamic_config_list_publishers | ( | iox2_port_factory_pub_sub_h_ref | handle, |
| iox2_list_publishers_callback | callback, | ||
| iox2_callback_context | callback_ctx ) |
Calls the callback repeatedly for every connected [iox2_publisher_h](crate::iox2_publisher_h) and provides all communication details with a [iox2_publisher_details_ptr].
| void iox2_port_factory_pub_sub_dynamic_config_list_subscribers | ( | iox2_port_factory_pub_sub_h_ref | handle, |
| iox2_list_subscribers_callback | callback, | ||
| iox2_callback_context | callback_ctx ) |
Calls the callback repeatedly for every connected [iox2_subscriber_h](crate::iox2_subscriber_h) and provides all communication details with a [iox2_subscriber_details_ptr].
| size_t iox2_port_factory_pub_sub_dynamic_config_number_of_publishers | ( | iox2_port_factory_pub_sub_h_ref | handle | ) |
Returns how many publisher ports are currently connected.
| size_t iox2_port_factory_pub_sub_dynamic_config_number_of_subscribers | ( | iox2_port_factory_pub_sub_h_ref | handle | ) |
Returns how many subscriber ports are currently connected.
| int iox2_port_factory_pub_sub_nodes | ( | iox2_port_factory_pub_sub_h_ref | handle, |
| iox2_node_list_callback | callback, | ||
| iox2_callback_context | callback_ctx ) |
Calls the callback repeatedly with an [iox2_node_state_e](crate::api::iox2_node_state_e), [iox2_unique_node_id_ptr](crate::api::iox2_unique_node_id_ptr), [´iox2_node_name_ptr´](crate::api::iox2_node_name_ptr) and [iox2_config_ptr](crate::api::iox2_config_ptr) for all [Node](iceoryx2::node::Node)s that have opened the service.
Returns IOX2_OK on success, an [iox2_node_list_failure_e](crate::api::iox2_node_list_failure_e) otherwise.
| iox2_port_factory_publisher_builder_h iox2_port_factory_pub_sub_publisher_builder | ( | iox2_port_factory_pub_sub_h_ref | port_factory_handle, |
| struct iox2_port_factory_publisher_builder_t * | publisher_builder_struct_ptr ) |
Instantiates a [iox2_port_factory_publisher_builder_h] to build a publisher.
Returns the iox2_port_factory_publisher_builder_h handle for the publisher builder.
| void iox2_port_factory_pub_sub_service_hash | ( | iox2_port_factory_pub_sub_h_ref | handle, |
| char * | buffer, | ||
| size_t | buffer_len ) |
Stores the service hash in the provided buffer
| iox2_service_name_ptr iox2_port_factory_pub_sub_service_name | ( | iox2_port_factory_pub_sub_h_ref | handle | ) |
Returns the [iox2_service_name_ptr], an immutable pointer to the service name.
| void iox2_port_factory_pub_sub_static_config | ( | iox2_port_factory_pub_sub_h_ref | port_factory_handle, |
| struct iox2_static_config_publish_subscribe_t * | static_config ) |
Set the values in the provided [iox2_static_config_publish_subscribe_t] pointer.
| iox2_port_factory_subscriber_builder_h iox2_port_factory_pub_sub_subscriber_builder | ( | iox2_port_factory_pub_sub_h_ref | port_factory_handle, |
| struct iox2_port_factory_subscriber_builder_t * | subscriber_builder_struct_ptr ) |
Instantiates a [iox2_port_factory_subscriber_builder_h] to build a subscriber.
Returns the [iox2_port_factory_subscriber_builder_h] handle for the subscriber builder.
| void iox2_port_factory_pub_sub_try_cleanup_dead_nodes | ( | iox2_port_factory_pub_sub_h_ref | port_factory_handle, |
| struct iox2_cleanup_state_t * | cleanup_state ) |
Removes the stale system resources of all dead nodes connected to this service.
If a node cannot be cleaned up since the process has insufficient permissions or it is currently being cleaned up by another process then the node is skipped.
| void iox2_port_factory_publisher_builder_backpressure_strategy | ( | iox2_port_factory_publisher_builder_h_ref | port_factory_handle, |
| enum iox2_backpressure_strategy_e | value ) |
Sets the backpressure strategy for the publisher
| int iox2_port_factory_publisher_builder_create | ( | iox2_port_factory_publisher_builder_h | port_factory_handle, |
| struct iox2_publisher_t * | publisher_struct_ptr, | ||
| iox2_publisher_h * | publisher_handle_ptr ) |
Creates a publisher and consumes the builder
Returns IOX2_OK on success, an [iox2_publisher_create_error_e] otherwise.
| void iox2_port_factory_publisher_builder_override_samples_preallocation | ( | iox2_port_factory_publisher_builder_h_ref | port_factory_handle, |
| iox2_preallocated_samples_override | callback, | ||
| iox2_callback_context | callback_ctx ) |
Defines a callback to reduce the number of preallocated samples. The input argument is the worst case number of preallocated samples required to guarantee that the publisher never runs out of samples to loan and send. The return value is clamped between 1 and the worst case number of preallocated samples.
If the user reduces the number of preallocated samples, iceoryx2 can no longer guarantee, that the publisher can always loan a sample to send.
| void iox2_port_factory_publisher_builder_set_allocation_strategy | ( | iox2_port_factory_publisher_builder_h_ref | port_factory_handle, |
| enum iox2_allocation_strategy_e | value ) |
Sets the [iox2_allocation_strategy_e] for the publisher
| void iox2_port_factory_publisher_builder_set_backpressure_handler | ( | iox2_port_factory_publisher_builder_h_ref | port_factory_handle, |
| iox2_backpressure_handler | handler, | ||
| iox2_callback_context | ctx ) |
Sets the backpressure handler for the publisher to be able to execute custom code if a sample cannot be delivered
| void iox2_port_factory_publisher_builder_set_degradation_handler | ( | iox2_port_factory_publisher_builder_h_ref | port_factory_handle, |
| iox2_degradation_handler | handler, | ||
| iox2_callback_context | ctx ) |
Sets the degradation handler for the publisher
| void iox2_port_factory_publisher_builder_set_initial_max_slice_len | ( | iox2_port_factory_publisher_builder_h_ref | port_factory_handle, |
| c_size_t | value ) |
Sets the max slice length for the publisher
| void iox2_port_factory_publisher_builder_set_max_loaned_samples | ( | iox2_port_factory_publisher_builder_h_ref | port_factory_handle, |
| c_size_t | value ) |
Sets the max loaned samples for the publisher
| void iox2_port_factory_publisher_builder_set_name | ( | iox2_port_factory_publisher_builder_h_ref | port_factory_handle, |
| iox2_port_name_ptr | port_name_ptr ) |
Sets the port name for the Publisher
| int iox2_port_factory_reader_builder_create | ( | iox2_port_factory_reader_builder_h | port_factory_handle, |
| struct iox2_reader_t * | reader_struct_ptr, | ||
| iox2_reader_h * | reader_handle_ptr ) |
Creates a reader and consumes the builder
Returns IOX2_OK on success, an [iox2_reader_create_error_e] otherwise.
| void iox2_port_factory_reader_builder_set_name | ( | iox2_port_factory_reader_builder_h_ref | port_factory_handle, |
| iox2_port_name_ptr | port_name_ptr ) |
Sets the port name for the Reader
| iox2_attribute_set_ptr iox2_port_factory_request_response_attributes | ( | iox2_port_factory_request_response_h_ref | port_factory_handle | ) |
| void iox2_port_factory_request_response_blocking_cleanup_dead_nodes | ( | iox2_port_factory_request_response_h_ref | port_factory_handle, |
| struct iox2_cleanup_state_t * | cleanup_state, | ||
| uint64_t | timeout_secs, | ||
| uint32_t | timeout_nsecs ) |
Removes the stale system resources of all dead nodes connected to this service.
If a node cannot be cleaned up since the process has insufficient permissions then the node is skipped. If it is currently being cleaned up by another process then the cleaner will wait until the timeout as either passed or the cleaned was finished.
The timeout is applied to every individual dead node the function needs to wait on.
| iox2_port_factory_client_builder_h iox2_port_factory_request_response_client_builder | ( | iox2_port_factory_request_response_h_ref | port_factory_handle, |
| struct iox2_port_factory_client_builder_t * | builder_struct_ptr ) |
Instantiates a [iox2_port_factory_client_builder_h] to build a client.
Returns the iox2_port_factory_client_builder_h handle for the client builder.
| void iox2_port_factory_request_response_drop | ( | iox2_port_factory_request_response_h | port_factory_handle | ) |
This function needs to be called to destroy the port factory!
| void iox2_port_factory_request_response_dynamic_config_list_clients | ( | iox2_port_factory_request_response_h_ref | handle, |
| iox2_list_clients_callback | callback, | ||
| iox2_callback_context | callback_ctx ) |
Calls the callback repeatedly with for every connected [iox2_client_h](crate::iox2_client_h) and provides all communication details with a [iox2_client_details_ptr].
| void iox2_port_factory_request_response_dynamic_config_list_servers | ( | iox2_port_factory_request_response_h_ref | handle, |
| iox2_list_servers_callback | callback, | ||
| iox2_callback_context | callback_ctx ) |
Calls the callback repeatedly for every connected [iox2_server_h](crate::iox2_server_h) and provides all communication details with a [iox2_server_details_ptr].
| size_t iox2_port_factory_request_response_dynamic_config_number_of_clients | ( | iox2_port_factory_request_response_h_ref | handle | ) |
Returns how many client ports are currently connected.
| size_t iox2_port_factory_request_response_dynamic_config_number_of_servers | ( | iox2_port_factory_request_response_h_ref | handle | ) |
Returns how many server ports are currently connected.
| int iox2_port_factory_request_response_nodes | ( | iox2_port_factory_request_response_h_ref | handle, |
| iox2_node_list_callback | callback, | ||
| iox2_callback_context | callback_ctx ) |
Calls the callback repeatedly with an [iox2_node_state_e](crate::api::iox2_node_state_e), [iox2_unique_node_id_ptr](crate::api::iox2_unique_node_id_ptr), [´iox2_node_name_ptr´](crate::api::iox2_node_name_ptr) and [iox2_config_ptr](crate::api::iox2_config_ptr) for all [Node](iceoryx2::node::Node)s that have opened the service.
Returns IOX2_OK on success, an [iox2_node_list_failure_e](crate::api::iox2_node_list_failure_e) otherwise.
| iox2_port_factory_server_builder_h iox2_port_factory_request_response_server_builder | ( | iox2_port_factory_request_response_h_ref | port_factory_handle, |
| struct iox2_port_factory_server_builder_t * | builder_struct_ptr ) |
Instantiates a [iox2_port_factory_server_builder_h] to build a server.
Returns the iox2_port_factory_server_builder_h handle for the server builder.
| void iox2_port_factory_request_response_service_hash | ( | iox2_port_factory_request_response_h_ref | handle, |
| char * | buffer, | ||
| size_t | buffer_len ) |
Stores the service hash in the provided buffer
| iox2_service_name_ptr iox2_port_factory_request_response_service_name | ( | iox2_port_factory_request_response_h_ref | handle | ) |
Returns the [iox2_service_name_ptr], an immutable pointer to the service name.
| void iox2_port_factory_request_response_static_config | ( | iox2_port_factory_request_response_h_ref | port_factory_handle, |
| struct iox2_static_config_request_response_t * | static_config ) |
Set the values in the provided [iox2_static_config_request_response_t] pointer.
| void iox2_port_factory_request_response_try_cleanup_dead_nodes | ( | iox2_port_factory_request_response_h_ref | port_factory_handle, |
| struct iox2_cleanup_state_t * | cleanup_state ) |
Removes the stale system resources of all dead nodes connected to this service.
If a node cannot be cleaned up since the process has insufficient permissions or it is currently being cleaned up by another process then the node is skipped.
| void iox2_port_factory_server_builder_backpressure_strategy | ( | iox2_port_factory_server_builder_h_ref | port_factory_handle, |
| enum iox2_backpressure_strategy_e | value ) |
Sets the backpressure strategy for the server
| int iox2_port_factory_server_builder_create | ( | iox2_port_factory_server_builder_h | port_factory_handle, |
| struct iox2_server_t * | struct_ptr, | ||
| iox2_server_h * | handle_ptr ) |
Creates a server and consumes the builder
Returns IOX2_OK on success, an [iox2_server_create_error_e] otherwise.
| void iox2_port_factory_server_builder_override_responses_preallocation | ( | iox2_port_factory_server_builder_h_ref | port_factory_handle, |
| iox2_preallocated_responses_override | callback, | ||
| iox2_callback_context | callback_ctx ) |
Defines a callback to reduce the number of preallocated responses. The input argument is the worst case number of preallocated responses required to guarantee that the server never runs out of responses to loan and send. The return value is clamped between 1 and the worst case number of preallocated responses.
If the user reduces the number of preallocated responses, iceoryx2 can no longer guarantee, that the server can always loan a response to send.
| void iox2_port_factory_server_builder_set_allocation_strategy | ( | iox2_port_factory_server_builder_h_ref | port_factory_handle, |
| enum iox2_allocation_strategy_e | value ) |
Sets the [iox2_allocation_strategy_e] for the server
| void iox2_port_factory_server_builder_set_backpressure_handler | ( | iox2_port_factory_server_builder_h_ref | port_factory_handle, |
| iox2_backpressure_handler | handler, | ||
| iox2_callback_context | ctx ) |
Sets the backpressure handler for the server to be able to execute custom code if a response cannot be delivered
| void iox2_port_factory_server_builder_set_initial_max_slice_len | ( | iox2_port_factory_server_builder_h_ref | port_factory_handle, |
| c_size_t | value ) |
Sets the initial max slice length for the server
| void iox2_port_factory_server_builder_set_max_loaned_responses_per_request | ( | iox2_port_factory_server_builder_h_ref | port_factory_handle, |
| c_size_t | value ) |
Defines how many responses the server can loan per request
| void iox2_port_factory_server_builder_set_name | ( | iox2_port_factory_server_builder_h_ref | port_factory_handle, |
| iox2_port_name_ptr | port_name_ptr ) |
Sets the port name for the Server
| void iox2_port_factory_server_builder_set_request_degradation_handler | ( | iox2_port_factory_server_builder_h_ref | port_factory_handle, |
| iox2_degradation_handler | handler, | ||
| iox2_callback_context | ctx ) |
Sets the request degradation handler for the sever
| void iox2_port_factory_server_builder_set_response_degradation_handler | ( | iox2_port_factory_server_builder_h_ref | port_factory_handle, |
| iox2_degradation_handler | handler, | ||
| iox2_callback_context | ctx ) |
Sets the response degradation handler for the server
| int iox2_port_factory_subscriber_builder_create | ( | iox2_port_factory_subscriber_builder_h | port_factory_handle, |
| struct iox2_subscriber_t * | subscriber_struct_ptr, | ||
| iox2_subscriber_h * | subscriber_handle_ptr ) |
Creates a subscriber and consumes the builder
Returns IOX2_OK on success, an [iox2_subscriber_create_error_e] otherwise.
| void iox2_port_factory_subscriber_builder_set_buffer_size | ( | iox2_port_factory_subscriber_builder_h_ref | port_factory_handle, |
| c_size_t | value ) |
Sets the buffer size for the subscriber
| void iox2_port_factory_subscriber_builder_set_degradation_handler | ( | iox2_port_factory_subscriber_builder_h_ref | port_factory_handle, |
| iox2_degradation_handler | handler, | ||
| iox2_callback_context | ctx ) |
Sets the degradation handler for the subscriber
| void iox2_port_factory_subscriber_builder_set_history_request | ( | iox2_port_factory_subscriber_builder_h_ref | port_factory_handle, |
| c_size_t | value ) |
Defines the amount of requested history samples. By default the value defined with the service's history_size is used.
| void iox2_port_factory_subscriber_builder_set_name | ( | iox2_port_factory_subscriber_builder_h_ref | port_factory_handle, |
| iox2_port_name_ptr | port_name_ptr ) |
Sets the port name for the Subscriber
| int iox2_port_factory_writer_builder_create | ( | iox2_port_factory_writer_builder_h | port_factory_handle, |
| struct iox2_writer_t * | writer_struct_ptr, | ||
| iox2_writer_h * | writer_handle_ptr ) |
Creates a writer and consumes the builder
Returns IOX2_OK on success, an [iox2_writer_create_error_e] otherwise.
| void iox2_port_factory_writer_builder_set_name | ( | iox2_port_factory_writer_builder_h_ref | port_factory_handle, |
| iox2_port_name_ptr | port_name_ptr ) |
Sets the port name for the Writer
| const char * iox2_port_name_as_chars | ( | iox2_port_name_ptr | port_name_ptr, |
| c_size_t * | port_name_len ) |
This function gives access to the port name as a non-zero-terminated char array
Returns a non-zero-terminated char array
| void iox2_port_name_drop | ( | iox2_port_name_h | port_name_handle | ) |
This function needs to be called to destroy the port name!
| int iox2_port_name_new | ( | struct iox2_port_name_t * | port_name_struct_ptr, |
| const char * | port_name_str, | ||
| c_size_t | port_name_len, | ||
| iox2_port_name_h * | port_name_handle_ptr ) |
This function create a new port name!
Returns IOX2_OK on success, an [iox2_semantic_string_error_e] otherwise.
| const char * iox2_pub_sub_open_or_create_error_string | ( | enum iox2_pub_sub_open_or_create_error_e | error | ) |
Returns a string literal describing the provided [iox2_pub_sub_open_or_create_error_e].
A pointer to a null-terminated string containing the error message. The string is stored in the .rodata section of the binary.
The returned pointer must not be modified or freed and is valid as long as the program runs.
| void iox2_publish_subscribe_header_drop | ( | iox2_publish_subscribe_header_h | handle | ) |
This function needs to be called to destroy the publish_subscribe_header!
| uint64_t iox2_publish_subscribe_header_number_of_elements | ( | iox2_publish_subscribe_header_h_ref | header_handle | ) |
Returns the number of elements of the payload. The element size is defined via this call when creating a new service [crate::iox2_service_builder_pub_sub_set_payload_type_details()]. So if the payload is defined with alignment 8 and size 16 and this function returns 5. It means that the payload consists of 5 elements of size 16 and every element is 8 byte aligned. Therefore, the payload pointer points to a memory region with 5 * 16 = 80 bytes.
| uint64_t iox2_publish_subscribe_header_payload_offset | ( | iox2_publish_subscribe_header_h_ref | header_handle | ) |
Returns the payload offset when it does not start at the beginning.
| void iox2_publish_subscribe_header_publisher_id | ( | iox2_publish_subscribe_header_h_ref | header_handle, |
| struct iox2_unique_publisher_id_t * | id_struct_ptr, | ||
| iox2_unique_publisher_id_h * | id_handle_ptr ) |
Returns the unique publisher id of the source of the sample.
| enum iox2_allocation_strategy_e iox2_publisher_allocation_strategy | ( | iox2_publisher_h_ref | publisher_handle | ) |
Returns the strategy the publisher follows when the slice length requested exceeds the current slice buffer
Returns [iox2_allocation_strategy_e].
| enum iox2_backpressure_strategy_e iox2_publisher_backpressure_strategy | ( | iox2_publisher_h_ref | publisher_handle | ) |
Returns the strategy the publisher follows when a sample cannot be delivered since the subscribers buffer is full.
Returns [iox2_backpressure_strategy_e].
| const char * iox2_publisher_create_error_string | ( | enum iox2_publisher_create_error_e | error | ) |
Returns a string literal describing the provided [iox2_publisher_create_error_e].
A pointer to a null-terminated string containing the error message. The string is stored in the .rodata section of the binary.
The returned pointer must not be modified or freed and is valid as long as the program runs.
| c_size_t iox2_publisher_details_max_slice_len | ( | iox2_publisher_details_ptr | handle | ) |
| iox2_unique_node_id_ptr iox2_publisher_details_node_id | ( | iox2_publisher_details_ptr | handle | ) |
Returns the [iox2_unique_node_id_ptr], an immutable pointer to the node id.
| c_size_t iox2_publisher_details_number_of_samples | ( | iox2_publisher_details_ptr | handle | ) |
| void iox2_publisher_details_publisher_id | ( | iox2_publisher_details_ptr | handle, |
| struct iox2_unique_publisher_id_t * | id_struct_ptr, | ||
| iox2_unique_publisher_id_h * | id_handle_ptr ) |
Returns the unique port id of the publisher.
| iox2_port_name_ptr iox2_publisher_details_publisher_name | ( | iox2_publisher_details_ptr | handle | ) |
Returns the [iox2_port_name_ptr], an immutable pointer to the name of the publisher.
| void iox2_publisher_drop | ( | iox2_publisher_h | publisher_handle | ) |
This function needs to be called to destroy the publisher!
| void iox2_publisher_id | ( | iox2_publisher_h_ref | publisher_handle, |
| struct iox2_unique_publisher_id_t * | id_struct_ptr, | ||
| iox2_unique_publisher_id_h * | id_handle_ptr ) |
Returns the unique port id of the publisher.
| c_size_t iox2_publisher_initial_max_slice_len | ( | iox2_publisher_h_ref | publisher_handle | ) |
Returns the maximum [u8] length that can be loaned in one sample, i.e. the max number of elements in the [u8] payload type used by the C binding.
Returns the maximum number of elements as a [c_size_t].
| int iox2_publisher_loan_slice_uninit | ( | iox2_publisher_h_ref | publisher_handle, |
| struct iox2_sample_mut_t * | sample_struct_ptr, | ||
| iox2_sample_mut_h * | sample_handle_ptr, | ||
| size_t | number_of_elements ) |
Loans memory from the publishers data segment.
Return [IOX2_OK] on success, otherwise [iox2_loan_error_e].
| c_size_t iox2_publisher_max_loaned_samples | ( | iox2_publisher_h_ref | publisher_handle | ) |
Returns the maximum number of samples that can be loaned at the same time by the publisher.
Returns the maximum number of loaned samples as a [c_size_t].
| iox2_port_name_ptr iox2_publisher_name | ( | iox2_publisher_h_ref | publisher_handle | ) |
Returns the [iox2_port_name_ptr], an immutable pointer to the port name.
| int iox2_publisher_send_copy | ( | iox2_publisher_h_ref | publisher_handle, |
| const void * | data_ptr, | ||
| size_t | data_len, | ||
| size_t * | number_of_recipients ) |
Sends a copy of the provided data via the publisher. The data must be copyable via memcpy.
Return [IOX2_OK] on success, otherwise [iox2_send_error_e].
| int iox2_publisher_send_slice_copy | ( | iox2_publisher_h_ref | publisher_handle, |
| const void * | data_ptr, | ||
| size_t | size_of_element, | ||
| size_t | number_of_elements, | ||
| size_t * | number_of_recipients ) |
Sends a copy of the provided slice data via the publisher.
Returns IOX2_OK on success, otherwise an error code from iox2_send_error_e
| int iox2_publisher_update_connections | ( | iox2_publisher_h_ref | publisher_handle | ) |
Updates all connections to new and obsolete subscriber ports and automatically delivery the history if requested.
| const char * iox2_reader_create_error_string | ( | enum iox2_reader_create_error_e | error | ) |
Returns a string literal describing the provided [iox2_reader_create_error_e].
A pointer to a null-terminated string containing the error message. The string is stored in the .rodata section of the binary.
The returned pointer must not be modified or freed and is valid as long as the program runs.
| iox2_unique_node_id_ptr iox2_reader_details_node_id | ( | iox2_reader_details_ptr | handle | ) |
Returns the [iox2_unique_node_id_ptr], an immutable pointer to the node id.
| void iox2_reader_details_reader_id | ( | iox2_reader_details_ptr | handle, |
| struct iox2_unique_reader_id_t * | id_struct_ptr, | ||
| iox2_unique_reader_id_h * | id_handle_ptr ) |
Returns the unique port id of the reader.
| iox2_port_name_ptr iox2_reader_details_reader_name | ( | iox2_reader_details_ptr | handle | ) |
Returns the [iox2_port_name_ptr], an immutable pointer to the name of the reader.
| void iox2_reader_drop | ( | iox2_reader_h | reader_handle | ) |
This function needs to be called to destroy the reader!
| int iox2_reader_entry | ( | iox2_reader_h_ref | reader_handle, |
| struct iox2_entry_handle_t * | entry_handle_struct_ptr, | ||
| iox2_entry_handle_h * | entry_handle_handle_ptr, | ||
| const void * | key, | ||
| const char * | value_type_name_str, | ||
| c_size_t | value_type_name_len, | ||
| c_size_t | value_size, | ||
| c_size_t | value_alignment ) |
Acquires an entry handle for direct read access to the stored value.
| void iox2_reader_id | ( | iox2_reader_h_ref | reader_handle, |
| struct iox2_unique_reader_id_t * | id_struct_ptr, | ||
| iox2_unique_reader_id_h * | id_handle_ptr ) |
Returns the unique port id of the reader.
| iox2_port_name_ptr iox2_reader_name | ( | iox2_reader_h_ref | reader_handle | ) |
Returns the [iox2_port_name_ptr], an immutable pointer to the port name.
| const char * iox2_receive_error_string | ( | enum iox2_receive_error_e | error | ) |
Returns a string literal describing the provided [iox2_receive_error_e].
A pointer to a null-terminated string containing the error message. The string is stored in the .rodata section of the binary.
The returned pointer must not be modified or freed and is valid as long as the program runs.
| void iox2_request_header_client_id | ( | iox2_request_header_h_ref | header_handle, |
| struct iox2_unique_client_id_t * | id_struct_ptr, | ||
| iox2_unique_client_id_h * | id_handle_ptr ) |
Returns the unique client id of the source of the request.
| void iox2_request_header_drop | ( | iox2_request_header_h | handle | ) |
This function needs to be called to destroy the request_header!
| uint64_t iox2_request_header_number_of_elements | ( | iox2_request_header_h_ref | header_handle | ) |
Returns the number of elements of the payload. The element size is defined via this call when creating a new service [crate::iox2_service_builder_request_response_set_request_payload_type_details()]. So if the payload is defined with alignment 8 and size 16 and this function returns 5. It means that the payload consists of 5 elements of size 16 and every element is 8 byte aligned. Therefore, the payload pointer points to a memory region with 5 * 16 = 80 bytes.
| uint64_t iox2_request_header_payload_offset | ( | iox2_request_header_h_ref | header_handle | ) |
| void iox2_request_mut_create_resizable_memory | ( | iox2_request_mut_h_ref | handle, |
| struct iox2_resizable_memory_request_t * | struct_ptr, | ||
| iox2_resizable_memory_request_h * | handle_ptr ) |
Returns a resizable memory builder required for dynamic allocation within the request.
| void iox2_request_mut_drop | ( | iox2_request_mut_h | handle | ) |
This function needs to be called to destroy the request!
| void iox2_request_mut_finish_serialized | ( | iox2_request_mut_h_ref | handle, |
| const uint8_t * | payload_ptr ) |
Finalizes a request that was populated through serialization. Based on the provided payload_ptr and allocation_size the offset to the start of the payload is calculated.
| void iox2_request_mut_header | ( | iox2_request_mut_h_ref | handle, |
| struct iox2_request_header_t * | header_struct_ptr, | ||
| iox2_request_header_h * | header_handle_ptr ) |
Acquires the requests header.
| void iox2_request_mut_payload | ( | iox2_request_mut_h_ref | handle, |
| const void ** | payload_ptr, | ||
| c_size_t * | number_of_elements ) |
Acquires the request payload.
| void iox2_request_mut_payload_mut | ( | iox2_request_mut_h_ref | handle, |
| void ** | payload_ptr, | ||
| c_size_t * | number_of_elements ) |
Acquires the requests mutable payload.
| c_size_t iox2_request_mut_payload_number_of_bytes | ( | iox2_request_mut_h_ref | handle | ) |
Returns the number of bytes of the request payload.
| int iox2_request_mut_send | ( | iox2_request_mut_h | handle, |
| struct iox2_pending_response_t * | pending_response_struct_ptr, | ||
| iox2_pending_response_h * | pending_response_handle_ptr ) |
Takes the ownership of the request and sends it
| void iox2_request_mut_user_header | ( | iox2_request_mut_h_ref | handle, |
| const void ** | header_ptr ) |
Acquires the requests user header.
| void iox2_request_mut_user_header_mut | ( | iox2_request_mut_h_ref | handle, |
| void ** | header_ptr ) |
Acquires the requests mutable user header.
| const char * iox2_request_response_open_or_create_error_string | ( | enum iox2_request_response_open_or_create_error_e | error | ) |
Returns a string literal describing the provided [iox2_request_response_open_or_create_error_e].
A pointer to a null-terminated string containing the error message. The string is stored in the .rodata section of the binary.
The returned pointer must not be modified or freed and is valid as long as the program runs.
| const char * iox2_request_send_error_string | ( | enum iox2_request_send_error_e | error | ) |
Returns a string literal describing the provided [iox2_request_send_error_e].
A pointer to a null-terminated string containing the error message. The string is stored in the .rodata section of the binary.
The returned pointer must not be modified or freed and is valid as long as the program runs.
| void iox2_resizable_memory_publish_subscribe_drop | ( | iox2_resizable_memory_publish_subscribe_h | handle | ) |
| int iox2_resizable_memory_publish_subscribe_grow_downwards | ( | iox2_resizable_memory_publish_subscribe_h_ref | handle, |
| size_t | new_size, | ||
| size_t | in_use_front, | ||
| uint8_t ** | new_ptr ) |
Resizes the underlying memory downwards. All contents are copied to the end of the resized memory chunk. When in_use_front != 0 those first bytes are copied to the beginning of the resized memory chunk. The new_size argument must be greater than the previous size, otherwise this function will fail.
| size_t iox2_resizable_memory_publish_subscribe_len | ( | iox2_resizable_memory_publish_subscribe_h_ref | handle | ) |
| uint8_t * iox2_resizable_memory_publish_subscribe_ptr | ( | iox2_resizable_memory_publish_subscribe_h_ref | handle | ) |
| void iox2_resizable_memory_request_drop | ( | iox2_resizable_memory_request_h | handle | ) |
| int iox2_resizable_memory_request_grow_downwards | ( | iox2_resizable_memory_request_h_ref | handle, |
| size_t | new_size, | ||
| size_t | in_use_front, | ||
| uint8_t ** | new_ptr ) |
Resizes the underlying memory downwards. All contents are copied to the end of the resized memory chunk. When in_use_front != 0 those first bytes are copied to the beginning of the resized memory chunk. The new_size argument must be greater than the previous size, otherwise this function will fail.
| size_t iox2_resizable_memory_request_len | ( | iox2_resizable_memory_request_h_ref | handle | ) |
| uint8_t * iox2_resizable_memory_request_ptr | ( | iox2_resizable_memory_request_h_ref | handle | ) |
| void iox2_resizable_memory_response_drop | ( | iox2_resizable_memory_response_h | handle | ) |
| int iox2_resizable_memory_response_grow_downwards | ( | iox2_resizable_memory_response_h_ref | handle, |
| size_t | new_size, | ||
| size_t | in_use_front, | ||
| uint8_t ** | new_ptr ) |
Resizes the underlying memory downwards. All contents are copied to the end of the resized memory chunk. When in_use_front != 0 those first bytes are copied to the beginning of the resized memory chunk. The new_size argument must be greater than the previous size, otherwise this function will fail.
| size_t iox2_resizable_memory_response_len | ( | iox2_resizable_memory_response_h_ref | handle | ) |
| uint8_t * iox2_resizable_memory_response_ptr | ( | iox2_resizable_memory_response_h_ref | handle | ) |
| void iox2_response_drop | ( | iox2_response_h | handle | ) |
Destroys the response.
| void iox2_response_header | ( | iox2_response_h_ref | handle, |
| struct iox2_response_header_t * | header_struct_ptr, | ||
| iox2_response_header_h * | header_handle_ptr ) |
Acquires the responses header.
| void iox2_response_header_drop | ( | iox2_response_header_h | handle | ) |
This function needs to be called to destroy the response_header!
| uint64_t iox2_response_header_number_of_elements | ( | iox2_response_header_h_ref | header_handle | ) |
Returns the number of elements of the payload. The element size is defined via this call when creating a new service [crate::iox2_service_builder_request_response_set_response_payload_type_details()]. So if the payload is defined with alignment 8 and size 16 and this function returns 5. It means that the payload consists of 5 elements of size 16 and every element is 8 byte aligned. Therefore, the payload pointer points to a memory region with 5 * 16 = 80 bytes.
| uint64_t iox2_response_header_payload_offset | ( | iox2_response_header_h_ref | header_handle | ) |
Returns the payload offset.
| void iox2_response_header_server_id | ( | iox2_response_header_h_ref | header_handle, |
| struct iox2_unique_server_id_t * | id_struct_ptr, | ||
| iox2_unique_server_id_h * | id_handle_ptr ) |
Returns the unique server id of the source of the response.
| void iox2_response_mut_create_resizable_memory | ( | iox2_response_mut_h_ref | handle, |
| struct iox2_resizable_memory_response_t * | struct_ptr, | ||
| iox2_resizable_memory_response_h * | handle_ptr ) |
Returns a resizable memory builder required for dynamic allocation within the response.
| void iox2_response_mut_drop | ( | iox2_response_mut_h | response_handle | ) |
Destroys the response without sending it.
| void iox2_response_mut_finish_serialized | ( | iox2_response_mut_h_ref | handle, |
| const uint8_t * | payload_ptr ) |
Finalizes a response that was populated through serialization. Based on the provided payload_ptr and allocation_size the offset to the start of the payload is calculated.
| void iox2_response_mut_header | ( | iox2_response_mut_h_ref | handle, |
| struct iox2_response_header_t * | header_struct_ptr, | ||
| iox2_response_header_h * | header_handle_ptr ) |
Acquires the responses header.
| void iox2_response_mut_payload | ( | iox2_response_mut_h_ref | handle, |
| const void ** | payload_ptr, | ||
| c_size_t * | number_of_elements ) |
Acquires the responses payload.
| void iox2_response_mut_payload_mut | ( | iox2_response_mut_h_ref | handle, |
| void ** | payload_ptr, | ||
| c_size_t * | number_of_elements ) |
Acquires the responses mutable payload.
| c_size_t iox2_response_mut_payload_number_of_bytes | ( | iox2_response_mut_h_ref | handle | ) |
Returns the number of bytes of the response payload.
| int iox2_response_mut_send | ( | iox2_response_mut_h | response_handle | ) |
Sends the response. Returns IOX2_OK on success otherwise [iox2_send_error_e](crate::api::iox2_send_error_e).
| void iox2_response_mut_user_header | ( | iox2_response_mut_h_ref | handle, |
| const void ** | header_ptr ) |
Acquires the responses user header.
| void iox2_response_mut_user_header_mut | ( | iox2_response_mut_h_ref | handle, |
| void ** | header_ptr ) |
Acquires the responses mutable user header.
| void iox2_response_payload | ( | iox2_response_h_ref | handle, |
| const void ** | payload_ptr, | ||
| c_size_t * | number_of_elements ) |
Acquires the responses payload.
| c_size_t iox2_response_payload_number_of_bytes | ( | iox2_response_h_ref | handle | ) |
Returns the number of bytes of the response payload.
| void iox2_response_user_header | ( | iox2_response_h_ref | handle, |
| const void ** | header_ptr ) |
Acquires the responses user header.
| void iox2_sample_drop | ( | iox2_sample_h | sample_handle | ) |
This function needs to be called to destroy the sample!
| void iox2_sample_header | ( | iox2_sample_h_ref | handle, |
| struct iox2_publish_subscribe_header_t * | header_struct_ptr, | ||
| iox2_publish_subscribe_header_h * | header_handle_ptr ) |
Acquires the samples header.
| void iox2_sample_mut_create_resizable_memory | ( | iox2_sample_mut_h_ref | handle, |
| struct iox2_resizable_memory_publish_subscribe_t * | struct_ptr, | ||
| iox2_resizable_memory_publish_subscribe_h * | handle_ptr ) |
Returns a resizable memory builder required for dynamic allocation within the sample.
| void iox2_sample_mut_drop | ( | iox2_sample_mut_h | sample_handle | ) |
This function needs to be called to destroy the sample!
| void iox2_sample_mut_finish_serialized | ( | iox2_sample_mut_h_ref | handle, |
| const uint8_t * | payload_ptr ) |
Finalizes a sample that was populated through serialization. Based on the provided payload_ptr and allocation_size the offset to the start of the payload is calculated.
| void iox2_sample_mut_header | ( | iox2_sample_mut_h_ref | handle, |
| struct iox2_publish_subscribe_header_t * | header_struct_ptr, | ||
| iox2_publish_subscribe_header_h * | header_handle_ptr ) |
Acquires the samples header.
| void iox2_sample_mut_payload | ( | iox2_sample_mut_h_ref | handle, |
| const void ** | payload_ptr, | ||
| c_size_t * | number_of_elements ) |
Acquires the samples payload.
| void iox2_sample_mut_payload_mut | ( | iox2_sample_mut_h_ref | handle, |
| void ** | payload_ptr, | ||
| c_size_t * | number_of_elements ) |
Acquires the samples mutable payload.
| c_size_t iox2_sample_mut_payload_number_of_bytes | ( | iox2_sample_mut_h_ref | handle | ) |
Returns the number of bytes of the sample's payload.
| int iox2_sample_mut_send | ( | iox2_sample_mut_h | sample_handle, |
| c_size_t * | number_of_recipients ) |
Takes the ownership of the sample and sends it
| void iox2_sample_mut_truncate | ( | iox2_sample_mut_h_ref | handle, |
| c_size_t | number_of_elements ) |
Shortens the payload of the sample to its first number_of_elements elements, so that only those are sent. It has no effect when number_of_elements is not smaller than the current number of elements.
| void iox2_sample_mut_user_header | ( | iox2_sample_mut_h_ref | handle, |
| const void ** | header_ptr ) |
Acquires the samples user header.
| void iox2_sample_mut_user_header_mut | ( | iox2_sample_mut_h_ref | handle, |
| void ** | header_ptr ) |
Acquires the samples mutable user header.
| void iox2_sample_payload | ( | iox2_sample_h_ref | handle, |
| const void ** | payload_ptr, | ||
| c_size_t * | number_of_elements ) |
Acquires the samples payload.
| c_size_t iox2_sample_payload_number_of_bytes | ( | iox2_sample_h_ref | handle | ) |
Returns the number of bytes of the sample's payload.
| void iox2_sample_user_header | ( | iox2_sample_h_ref | handle, |
| const void ** | header_ptr ) |
Acquires the samples user header.
| const char * iox2_semantic_string_error_string | ( | enum iox2_semantic_string_error_e | error | ) |
Returns a string literal describing the provided [iox2_semantic_string_error_e].
A pointer to a null-terminated string containing the error message. The string is stored in the .rodata section of the binary.
The returned pointer must not be modified or freed and is valid as long as the program runs.
| const char * iox2_send_error_string | ( | enum iox2_send_error_e | error | ) |
Returns a string literal describing the provided [iox2_send_error_e].
A pointer to a null-terminated string containing the error message. The string is stored in the .rodata section of the binary.
The returned pointer must not be modified or freed and is valid as long as the program runs.
| const char * iox2_server_create_error_string | ( | enum iox2_server_create_error_e | error | ) |
Returns a string literal describing the provided [iox2_server_create_error_e].
A pointer to a null-terminated string containing the error message. The string is stored in the .rodata section of the binary.
The returned pointer must not be modified or freed and is valid as long as the program runs.
| c_size_t iox2_server_details_max_slice_len | ( | iox2_server_details_ptr | handle | ) |
| iox2_unique_node_id_ptr iox2_server_details_node_id | ( | iox2_server_details_ptr | handle | ) |
Returns the [iox2_unique_node_id_ptr], an immutable pointer to the node id.
| c_size_t iox2_server_details_number_of_responses | ( | iox2_server_details_ptr | handle | ) |
| c_size_t iox2_server_details_request_buffer_size | ( | iox2_server_details_ptr | handle | ) |
| void iox2_server_details_server_id | ( | iox2_server_details_ptr | handle, |
| struct iox2_unique_server_id_t * | id_struct_ptr, | ||
| iox2_unique_server_id_h * | id_handle_ptr ) |
Returns the unique port id of the server.
| iox2_port_name_ptr iox2_server_details_server_name | ( | iox2_server_details_ptr | handle | ) |
Returns the [iox2_port_name_ptr], an immutable pointer to the name of the server.
| void iox2_server_drop | ( | iox2_server_h | handle | ) |
This function needs to be called to destroy the server!
| int iox2_server_has_requests | ( | iox2_server_h_ref | handle, |
| bool * | result_ptr ) |
Returns true when the server has requests that can be acquired with [iox2_server_receive], otherwise false.
Returns IOX2_OK on success, an [iox2_connection_failure_e](crate::iox2_connection_failure_e) otherwise. Attention, an empty server queue is not an error and even with IOX2_OK it is possible to get a NULL in request_handle_ptr.
| void iox2_server_id | ( | iox2_server_h_ref | handle, |
| struct iox2_unique_server_id_t * | id_struct_ptr, | ||
| iox2_unique_server_id_h * | id_handle_ptr ) |
Returns the unique port id of the server.
| c_size_t iox2_server_initial_max_slice_len | ( | iox2_server_h_ref | handle | ) |
Returns the initial max slice len of the server. In the dynamic memory case, slice length might increase over time.
| iox2_port_name_ptr iox2_server_name | ( | iox2_server_h_ref | handle | ) |
Returns the [iox2_port_name_ptr], an immutable pointer to the port name.
| int iox2_server_receive | ( | iox2_server_h_ref | server_handle, |
| struct iox2_active_request_t * | active_request_struct_ptr, | ||
| iox2_active_request_h * | active_request_handle_ptr ) |
Takes a request ouf of the server queue.
Returns IOX2_OK on success, an [iox2_receive_error_e](crate::iox2_receive_error_e) otherwise. Attention, an empty server queue is not an error and even with IOX2_OK it is possible to get a NULL in active_request_handle_ptr.
| int iox2_service_builder_blackboard_create | ( | iox2_service_builder_blackboard_creator_h | service_builder_handle, |
| struct iox2_port_factory_blackboard_t * | port_factory_struct_ptr, | ||
| iox2_port_factory_blackboard_h * | port_factory_handle_ptr ) |
Creates a blackboard service and returns a port factory to create writers and readers.
Returns IOX2_OK on success, an [iox2_blackboard_create_error_e] otherwise.
| int iox2_service_builder_blackboard_create_with_attributes | ( | iox2_service_builder_blackboard_creator_h | service_builder_handle, |
| iox2_attribute_specifier_h_ref | attribute_specifier_handle, | ||
| struct iox2_port_factory_blackboard_t * | port_factory_struct_ptr, | ||
| iox2_port_factory_blackboard_h * | port_factory_handle_ptr ) |
Creates a service if it does not exist and returns a port factory to create writers and readers. The provided arguments are stored inside the services.
Returns IOX2_OK on success, an [iox2_blackboard_create_error_e] otherwise.
| iox2_service_builder_blackboard_creator_h iox2_service_builder_blackboard_creator | ( | iox2_service_builder_h | service_builder_handle | ) |
This function transforms the [iox2_service_builder_h] to a blackboard service creator.
Returns a [iox2_service_builder_blackboard_creator_h] for the blackboard service creator
| void iox2_service_builder_blackboard_creator_add | ( | iox2_service_builder_blackboard_creator_h_ref | service_builder_handle, |
| const void * | key, | ||
| void * | value_ptr, | ||
| iox2_service_blackboard_creator_add_release_callback | release_callback, | ||
| const char * | type_name, | ||
| size_t | type_name_len, | ||
| size_t | type_size, | ||
| size_t | type_align ) |
Adds key-value pairs to the blackboard.
| void iox2_service_builder_blackboard_creator_set_key_eq_comparison_function | ( | iox2_service_builder_blackboard_creator_h_ref | service_builder_handle, |
| iox2_service_blackboard_key_eq_cmp_func | key_eq_func ) |
Sets the key equality comparison function for the creator.
| int iox2_service_builder_blackboard_creator_set_key_type_details | ( | iox2_service_builder_blackboard_creator_h_ref | service_builder_handle, |
| const char * | type_name_str, | ||
| c_size_t | type_name_len, | ||
| c_size_t | size, | ||
| c_size_t | alignment ) |
Sets the key type details for the creator. The key type must be fixed size.
Returns IOX2_OK on success, an [iox2_type_detail_error_e](crate::iox2_type_detail_error_e) otherwise.
| void iox2_service_builder_blackboard_creator_set_max_nodes | ( | iox2_service_builder_blackboard_creator_h_ref | service_builder_handle, |
| c_size_t | value ) |
Sets the max nodes for the creator
| void iox2_service_builder_blackboard_creator_set_max_readers | ( | iox2_service_builder_blackboard_creator_h_ref | service_builder_handle, |
| c_size_t | value ) |
Sets the max readers for the creator
| int iox2_service_builder_blackboard_open | ( | iox2_service_builder_blackboard_opener_h | service_builder_handle, |
| struct iox2_port_factory_blackboard_t * | port_factory_struct_ptr, | ||
| iox2_port_factory_blackboard_h * | port_factory_handle_ptr ) |
Opens a blackboard service and returns a port factory to create writers and readers.
Returns IOX2_OK on success, an [iox2_blackboard_open_error_e] otherwise.
| int iox2_service_builder_blackboard_open_with_attributes | ( | iox2_service_builder_blackboard_opener_h | service_builder_handle, |
| iox2_attribute_verifier_h_ref | attribute_verifier_handle, | ||
| struct iox2_port_factory_blackboard_t * | port_factory_struct_ptr, | ||
| iox2_port_factory_blackboard_h * | port_factory_handle_ptr ) |
Opens a blackboard service and returns a port factory to create writers and readers. The provided attributes are considered as requirements.
Returns IOX2_OK on success, an [iox2_blackboard_open_error_e] otherwise.
| iox2_service_builder_blackboard_opener_h iox2_service_builder_blackboard_opener | ( | iox2_service_builder_h | service_builder_handle | ) |
This function transforms the [iox2_service_builder_h] to a blackboard service opener.
Returns a [iox2_service_builder_blackboard_opener_h] for the blackboard service opener
| void iox2_service_builder_blackboard_opener_set_key_eq_comparison_function | ( | iox2_service_builder_blackboard_opener_h_ref | service_builder_handle, |
| iox2_service_blackboard_key_eq_cmp_func | key_eq_func ) |
Sets the key equality comparison function for the opener.
| int iox2_service_builder_blackboard_opener_set_key_type_details | ( | iox2_service_builder_blackboard_opener_h_ref | service_builder_handle, |
| const char * | type_name_str, | ||
| c_size_t | type_name_len, | ||
| c_size_t | size, | ||
| c_size_t | alignment ) |
Sets the key type details for the opener. The key type must be fixed size.
Returns IOX2_OK on success, an [iox2_type_detail_error_e](crate::iox2_type_detail_error_e) otherwise.
| void iox2_service_builder_blackboard_opener_set_max_nodes | ( | iox2_service_builder_blackboard_opener_h_ref | service_builder_handle, |
| c_size_t | value ) |
Sets the max nodes for the opener
| void iox2_service_builder_blackboard_opener_set_max_readers | ( | iox2_service_builder_blackboard_opener_h_ref | service_builder_handle, |
| c_size_t | value ) |
Sets the max readers for the opener
| iox2_service_builder_event_h iox2_service_builder_event | ( | iox2_service_builder_h | service_builder_handle | ) |
This function transform the [iox2_service_builder_h] to an event service builder.
Returns a [iox2_service_builder_event_h] for the event service builder
| int iox2_service_builder_event_create | ( | iox2_service_builder_event_h | service_builder_handle, |
| struct iox2_port_factory_event_t * | port_factory_struct_ptr, | ||
| iox2_port_factory_event_h * | port_factory_handle_ptr ) |
Creates an event service and returns a port factory to create notifiers and listeners.
Returns IOX2_OK on success, an [iox2_event_open_or_create_error_e] otherwise. Note, only the errors annotated with O_ are relevant.
| int iox2_service_builder_event_create_with_attributes | ( | iox2_service_builder_event_h | service_builder_handle, |
| iox2_attribute_specifier_h_ref | attribute_specifier_handle, | ||
| struct iox2_port_factory_event_t * | port_factory_struct_ptr, | ||
| iox2_port_factory_event_h * | port_factory_handle_ptr ) |
Creates a service if it does not exist and returns a port factory to create notifiers and listeners. The provided arguments are stored inside the services.
Returns IOX2_OK on success, an [iox2_event_open_or_create_error_e] otherwise.
| void iox2_service_builder_event_disable_deadline | ( | iox2_service_builder_event_h_ref | service_builder_handle | ) |
Disables the deadline property of the service.
| void iox2_service_builder_event_disable_notifier_created_event | ( | iox2_service_builder_event_h_ref | service_builder_handle | ) |
Disables the event id value that shall be emitted after a notifier was created.
| void iox2_service_builder_event_disable_notifier_dead_event | ( | iox2_service_builder_event_h_ref | service_builder_handle | ) |
Disables event id notification when a notifier was identified as dead.
| void iox2_service_builder_event_disable_notifier_dropped_event | ( | iox2_service_builder_event_h_ref | service_builder_handle | ) |
Disables the event id value that shall be emitted before a notifier is dropped.
| int iox2_service_builder_event_open | ( | iox2_service_builder_event_h | service_builder_handle, |
| struct iox2_port_factory_event_t * | port_factory_struct_ptr, | ||
| iox2_port_factory_event_h * | port_factory_handle_ptr ) |
Opens an event service and returns a port factory to create notifiers and listeners.
Returns IOX2_OK on success, an [iox2_event_open_or_create_error_e] otherwise. Note, only the errors annotated with O_ are relevant.
| int iox2_service_builder_event_open_or_create | ( | iox2_service_builder_event_h | service_builder_handle, |
| struct iox2_port_factory_event_t * | port_factory_struct_ptr, | ||
| iox2_port_factory_event_h * | port_factory_handle_ptr ) |
Opens an event service or creates the service if it does not exist and returns a port factory to create notifiers and listeners.
Returns IOX2_OK on success, an [iox2_event_open_or_create_error_e] otherwise.
| int iox2_service_builder_event_open_or_create_with_attributes | ( | iox2_service_builder_event_h | service_builder_handle, |
| iox2_attribute_verifier_h_ref | attribute_verifier_handle, | ||
| struct iox2_port_factory_event_t * | port_factory_struct_ptr, | ||
| iox2_port_factory_event_h * | port_factory_handle_ptr ) |
Opens an event service or creates the service if it does not exist and returns a port factory to create notifiers and listeners. If the service does not exist, the provided arguments are stored inside the services, if the service already exists, the provided attributes are considered as requirements.
Returns IOX2_OK on success, an [iox2_event_open_or_create_error_e] otherwise.
| int iox2_service_builder_event_open_with_attributes | ( | iox2_service_builder_event_h | service_builder_handle, |
| iox2_attribute_verifier_h_ref | attribute_verifier_handle, | ||
| struct iox2_port_factory_event_t * | port_factory_struct_ptr, | ||
| iox2_port_factory_event_h * | port_factory_handle_ptr ) |
Opens an event service and returns a port factory to create notifiers and listeners. The provided attributes are considered as requirements.
Returns IOX2_OK on success, an [iox2_event_open_or_create_error_e] otherwise.
| void iox2_service_builder_event_set_deadline | ( | iox2_service_builder_event_h_ref | service_builder_handle, |
| uint64_t | seconds, | ||
| uint32_t | nanoseconds ) |
Enables the deadline property of the service. There must be a notification emitted by any notifier after at least the provided deadline.
| void iox2_service_builder_event_set_event_id_max_value | ( | iox2_service_builder_event_h_ref | service_builder_handle, |
| c_size_t | value ) |
Sets the max event id value for the builder
| void iox2_service_builder_event_set_max_listeners | ( | iox2_service_builder_event_h_ref | service_builder_handle, |
| c_size_t | value ) |
Sets the max listeners for the builder
| void iox2_service_builder_event_set_max_nodes | ( | iox2_service_builder_event_h_ref | service_builder_handle, |
| c_size_t | value ) |
Sets the max nodes for the builder
| void iox2_service_builder_event_set_max_notifiers | ( | iox2_service_builder_event_h_ref | service_builder_handle, |
| c_size_t | value ) |
Sets the max notifiers for the builder
| void iox2_service_builder_event_set_notifier_created_event | ( | iox2_service_builder_event_h_ref | service_builder_handle, |
| c_size_t | value ) |
Sets the event id value that shall be emitted after a notifier was created.
| void iox2_service_builder_event_set_notifier_dead_event | ( | iox2_service_builder_event_h_ref | service_builder_handle, |
| c_size_t | value ) |
Sets the event id value that shall be emitted if a notifier was identified as dead.
| void iox2_service_builder_event_set_notifier_dropped_event | ( | iox2_service_builder_event_h_ref | service_builder_handle, |
| c_size_t | value ) |
Sets the event id value that shall be emitted before a notifier is dropped.
| iox2_service_builder_pub_sub_h iox2_service_builder_pub_sub | ( | iox2_service_builder_h | service_builder_handle | ) |
This function transform the [iox2_service_builder_h] to a publish-subscribe service builder.
Returns a [iox2_service_builder_pub_sub_h] for the publish-subscribe service builder
| iox2_config_ptr iox2_service_builder_pub_sub_config | ( | iox2_service_builder_pub_sub_h_ref | handle | ) |
Returns the [iox2_config_ptr], an immutable pointer to the config.
| int iox2_service_builder_pub_sub_create | ( | iox2_service_builder_pub_sub_h | service_builder_handle, |
| struct iox2_port_factory_pub_sub_t * | port_factory_struct_ptr, | ||
| iox2_port_factory_pub_sub_h * | port_factory_handle_ptr ) |
Creates a publish-subscribe service and returns a port factory to create publishers and subscribers.
Returns IOX2_OK on success, an [iox2_pub_sub_open_or_create_error_e] otherwise. Note, only the errors annotated with C_ are relevant.
| int iox2_service_builder_pub_sub_create_with_attributes | ( | iox2_service_builder_pub_sub_h | service_builder_handle, |
| iox2_attribute_specifier_h_ref | attribute_specifier_handle, | ||
| struct iox2_port_factory_pub_sub_t * | port_factory_struct_ptr, | ||
| iox2_port_factory_pub_sub_h * | port_factory_handle_ptr ) |
Creates a publish-subscribe service and returns a port factory to create publishers and subscribers. The provided arguments are stored inside the services.
Returns IOX2_OK on success, an [iox2_pub_sub_open_or_create_error_e] otherwise. Note, only the errors annotated with C_ are relevant.
| int iox2_service_builder_pub_sub_open | ( | iox2_service_builder_pub_sub_h | service_builder_handle, |
| struct iox2_port_factory_pub_sub_t * | port_factory_struct_ptr, | ||
| iox2_port_factory_pub_sub_h * | port_factory_handle_ptr ) |
Opens a publish-subscribe service and returns a port factory to create publishers and subscribers.
Returns IOX2_OK on success, an [iox2_pub_sub_open_or_create_error_e] otherwise. Note, only the errors annotated with O_ are relevant.
| int iox2_service_builder_pub_sub_open_or_create | ( | iox2_service_builder_pub_sub_h | service_builder_handle, |
| struct iox2_port_factory_pub_sub_t * | port_factory_struct_ptr, | ||
| iox2_port_factory_pub_sub_h * | port_factory_handle_ptr ) |
Opens a publish-subscribe service or creates the service if it does not exist and returns a port factory to create publishers and subscribers.
Returns IOX2_OK on success, an [iox2_pub_sub_open_or_create_error_e] otherwise.
| int iox2_service_builder_pub_sub_open_or_create_with_attributes | ( | iox2_service_builder_pub_sub_h | service_builder_handle, |
| iox2_attribute_verifier_h_ref | attribute_verifier_handle, | ||
| struct iox2_port_factory_pub_sub_t * | port_factory_struct_ptr, | ||
| iox2_port_factory_pub_sub_h * | port_factory_handle_ptr ) |
Opens a publish-subscribe service or creates the service if it does not exist and returns a port factory to create publishers and subscribers. If the service does not exist, the provided arguments are stored inside the services, if the service already exists, the provided attributes are considered as requirements.
Returns IOX2_OK on success, an [iox2_pub_sub_open_or_create_error_e] otherwise.
| int iox2_service_builder_pub_sub_open_with_attributes | ( | iox2_service_builder_pub_sub_h | service_builder_handle, |
| iox2_attribute_verifier_h_ref | attribute_verifier_handle, | ||
| struct iox2_port_factory_pub_sub_t * | port_factory_struct_ptr, | ||
| iox2_port_factory_pub_sub_h * | port_factory_handle_ptr ) |
Opens a publish-subscribe service and returns a port factory to create publishers and subscribers. The provided attributes are considered as requirements.
Returns IOX2_OK on success, an [iox2_pub_sub_open_or_create_error_e] otherwise. Note, only the errors annotated with O_ are relevant.
| void iox2_service_builder_pub_sub_set_enable_safe_overflow | ( | iox2_service_builder_pub_sub_h_ref | service_builder_handle, |
| bool | value ) |
Enables/disables safe overflow for the service
| int iox2_service_builder_pub_sub_set_flatbuffer_schema_path | ( | iox2_service_builder_pub_sub_h_ref | service_builder_handle, |
| const char * | path_str ) |
Sets flatbuffer schema path for the builder. Only allowed when the payload is a flatbuffer.
Returns IOX2_OK on success, an [iox2_type_detail_error_e] otherwise.
| void iox2_service_builder_pub_sub_set_history_size | ( | iox2_service_builder_pub_sub_h_ref | service_builder_handle, |
| c_size_t | value ) |
Sets the history size
| void iox2_service_builder_pub_sub_set_max_nodes | ( | iox2_service_builder_pub_sub_h_ref | service_builder_handle, |
| c_size_t | value ) |
Sets the max nodes for the builder
| void iox2_service_builder_pub_sub_set_max_publishers | ( | iox2_service_builder_pub_sub_h_ref | service_builder_handle, |
| c_size_t | value ) |
Sets the max publishers for the builder
| void iox2_service_builder_pub_sub_set_max_subscribers | ( | iox2_service_builder_pub_sub_h_ref | service_builder_handle, |
| c_size_t | value ) |
Sets the max subscribers for the builder
| void iox2_service_builder_pub_sub_set_payload_alignment | ( | iox2_service_builder_pub_sub_h_ref | service_builder_handle, |
| c_size_t | value ) |
Sets the payload alignment for the builder
| int iox2_service_builder_pub_sub_set_payload_type_details | ( | iox2_service_builder_pub_sub_h_ref | service_builder_handle, |
| enum iox2_type_variant_e | type_variant, | ||
| const char * | type_name_str, | ||
| c_size_t | type_name_len, | ||
| c_size_t | size, | ||
| c_size_t | alignment ) |
Sets the payload type details for the builder
Returns IOX2_OK on success, an [iox2_type_detail_error_e] otherwise.
| void iox2_service_builder_pub_sub_set_subscriber_max_borrowed_samples | ( | iox2_service_builder_pub_sub_h_ref | service_builder_handle, |
| c_size_t | value ) |
Sets the subscriber max borrowed samples
| void iox2_service_builder_pub_sub_set_subscriber_max_buffer_size | ( | iox2_service_builder_pub_sub_h_ref | service_builder_handle, |
| c_size_t | value ) |
Sets the subscriber max buffer size
| int iox2_service_builder_pub_sub_set_user_header_type_details | ( | iox2_service_builder_pub_sub_h_ref | service_builder_handle, |
| enum iox2_type_variant_e | type_variant, | ||
| const char * | type_name_str, | ||
| c_size_t | type_name_len, | ||
| c_size_t | size, | ||
| c_size_t | alignment ) |
Sets the user header type details for the builder
Returns IOX2_OK on success, an [iox2_type_detail_error_e] otherwise.
| void iox2_service_builder_pub_sub_type_definition_name_hint | ( | iox2_service_builder_pub_sub_h_ref | service_builder_handle, |
| const char * | name, | ||
| c_size_t | name_len, | ||
| const char * | namespace_, | ||
| c_size_t | namespace_len ) |
Sets the type definition name hint. This enables the type definition auto-lookup.
| iox2_service_builder_request_response_h iox2_service_builder_request_response | ( | iox2_service_builder_h | service_builder_handle | ) |
This function transform the [iox2_service_builder_h] to a request-response service builder.
Returns a [iox2_service_builder_request_response_h] for the request-response service builder
| int iox2_service_builder_request_response_create | ( | iox2_service_builder_request_response_h | service_builder_handle, |
| struct iox2_port_factory_request_response_t * | port_factory_struct_ptr, | ||
| iox2_port_factory_request_response_h * | port_factory_handle_ptr ) |
Creates a request-response service and returns a port factory to create servers and clients.
Returns IOX2_OK on success, an [iox2_request_response_open_or_create_error_e] otherwise. Note, only the errors annotated with C_ are relevant.
| int iox2_service_builder_request_response_create_with_attributes | ( | iox2_service_builder_request_response_h | service_builder_handle, |
| iox2_attribute_specifier_h_ref | attribute_specifier_handle, | ||
| struct iox2_port_factory_request_response_t * | port_factory_struct_ptr, | ||
| iox2_port_factory_request_response_h * | port_factory_handle_ptr ) |
Creates a request-response service and returns a port factory to create servers and clients. The provided arguments are stored inside the services.
Returns IOX2_OK on success, an [iox2_request_response_open_or_create_error_e] otherwise. Note, only the errors annotated with C_ are relevant.
| void iox2_service_builder_request_response_enable_fire_and_forget_requests | ( | iox2_service_builder_request_response_h_ref | service_builder_handle, |
| bool | value ) |
Enables/disables fire and forget requests
| void iox2_service_builder_request_response_enable_safe_overflow_for_requests | ( | iox2_service_builder_request_response_h_ref | service_builder_handle, |
| bool | value ) |
Enables/disables safe overflow for requests
| void iox2_service_builder_request_response_enable_safe_overflow_for_responses | ( | iox2_service_builder_request_response_h_ref | service_builder_handle, |
| bool | value ) |
Enables/disables safe overflow for responses
| void iox2_service_builder_request_response_max_active_requests_per_client | ( | iox2_service_builder_request_response_h_ref | service_builder_handle, |
| c_size_t | value ) |
Sets the maximum amount of active requests a client can have
| void iox2_service_builder_request_response_max_borrowed_responses_per_pending_response | ( | iox2_service_builder_request_response_h_ref | service_builder_handle, |
| c_size_t | value ) |
Sets the maximum amount responses a client can borrow from a pending response
| void iox2_service_builder_request_response_max_clients | ( | iox2_service_builder_request_response_h_ref | service_builder_handle, |
| c_size_t | value ) |
Sets the maximum number of clients the service will support
| void iox2_service_builder_request_response_max_loaned_requests | ( | iox2_service_builder_request_response_h_ref | service_builder_handle, |
| c_size_t | value ) |
Sets the maximum number of requests a client can loan at the same time
| void iox2_service_builder_request_response_max_response_buffer_size | ( | iox2_service_builder_request_response_h_ref | service_builder_handle, |
| c_size_t | value ) |
Sets the maximum buffer size for responses on the client side
| void iox2_service_builder_request_response_max_servers | ( | iox2_service_builder_request_response_h_ref | service_builder_handle, |
| c_size_t | value ) |
Sets the maximum number of servers the service will support
| int iox2_service_builder_request_response_open | ( | iox2_service_builder_request_response_h | service_builder_handle, |
| struct iox2_port_factory_request_response_t * | port_factory_struct_ptr, | ||
| iox2_port_factory_request_response_h * | port_factory_handle_ptr ) |
Opens a request-response service and returns a port factory to create servers and clients.
Returns IOX2_OK on success, an [iox2_request_response_open_or_create_error_e] otherwise. Note, only the errors annotated with O_ are relevant.
| int iox2_service_builder_request_response_open_or_create | ( | iox2_service_builder_request_response_h | service_builder_handle, |
| struct iox2_port_factory_request_response_t * | port_factory_struct_ptr, | ||
| iox2_port_factory_request_response_h * | port_factory_handle_ptr ) |
Opens a request-response service or creates the service if it does not exist and returns a port factory to create servers and clients.
Returns IOX2_OK on success, an [iox2_request_response_open_or_create_error_e] otherwise.
| int iox2_service_builder_request_response_open_or_create_with_attributes | ( | iox2_service_builder_request_response_h | service_builder_handle, |
| iox2_attribute_verifier_h_ref | attribute_verifier_handle, | ||
| struct iox2_port_factory_request_response_t * | port_factory_struct_ptr, | ||
| iox2_port_factory_request_response_h * | port_factory_handle_ptr ) |
Opens a request-response service or creates the service if it does not exist and returns a port factory to create servers and clients. If the service does not exist, the provided arguments are stored inside the services, if the service already exists, the provided attributes are considered as requirements.
Returns IOX2_OK on success, an [iox2_request_response_open_or_create_error_e] otherwise.
| int iox2_service_builder_request_response_open_with_attributes | ( | iox2_service_builder_request_response_h | service_builder_handle, |
| iox2_attribute_verifier_h_ref | attribute_verifier_handle, | ||
| struct iox2_port_factory_request_response_t * | port_factory_struct_ptr, | ||
| iox2_port_factory_request_response_h * | port_factory_handle_ptr ) |
Opens a request-response service and returns a port factory to create servers and clients. The provided attributes are considered as requirements.
Returns IOX2_OK on success, an [iox2_request_response_open_or_create_error_e] otherwise. Note, only the errors annotated with O_ are relevant.
| void iox2_service_builder_request_response_request_payload_alignment | ( | iox2_service_builder_request_response_h_ref | service_builder_handle, |
| c_size_t | value ) |
Overrides the alignment of the provided request payload.
| void iox2_service_builder_request_response_request_type_definition_name_hint | ( | iox2_service_builder_request_response_h_ref | service_builder_handle, |
| const char * | name, | ||
| c_size_t | name_len, | ||
| const char * | namespace_, | ||
| c_size_t | namespace_len ) |
Sets the request type definition name hint. This enables the type definition auto-lookup.
| void iox2_service_builder_request_response_response_payload_alignment | ( | iox2_service_builder_request_response_h_ref | service_builder_handle, |
| c_size_t | value ) |
Overrides the alignment of the provided response payload.
| void iox2_service_builder_request_response_response_type_definition_name_hint | ( | iox2_service_builder_request_response_h_ref | service_builder_handle, |
| const char * | name, | ||
| c_size_t | name_len, | ||
| const char * | namespace_, | ||
| c_size_t | namespace_len ) |
Sets the response type definition name hint. This enables the type definition auto-lookup.
| void iox2_service_builder_request_response_set_max_nodes | ( | iox2_service_builder_request_response_h_ref | service_builder_handle, |
| c_size_t | value ) |
Sets the maximum number of nodes that can open the service
| int iox2_service_builder_request_response_set_request_flatbuffer_schema_path | ( | iox2_service_builder_request_response_h_ref | service_builder_handle, |
| const char * | path_str ) |
Sets flatbuffer request schema path for the builder. Only allowed when the payload is a flatbuffer.
Returns IOX2_OK on success, an [iox2_type_detail_error_e] otherwise.
| int iox2_service_builder_request_response_set_request_header_type_details | ( | iox2_service_builder_request_response_h_ref | service_builder_handle, |
| enum iox2_type_variant_e | type_variant, | ||
| const char * | type_name_str, | ||
| c_size_t | type_name_len, | ||
| c_size_t | size, | ||
| c_size_t | alignment ) |
Sets the request header type details for the builder
Returns IOX2_OK on success, an [iox2_type_detail_error_e] otherwise.
| int iox2_service_builder_request_response_set_request_payload_type_details | ( | iox2_service_builder_request_response_h_ref | service_builder_handle, |
| enum iox2_type_variant_e | type_variant, | ||
| const char * | type_name_str, | ||
| c_size_t | type_name_len, | ||
| c_size_t | size, | ||
| c_size_t | alignment ) |
Sets the request payload type details for the builder
Returns IOX2_OK on success, an [iox2_type_detail_error_e] otherwise.
| int iox2_service_builder_request_response_set_response_flatbuffer_schema_path | ( | iox2_service_builder_request_response_h_ref | service_builder_handle, |
| const char * | path_str ) |
Sets flatbuffer response schema path for the builder. Only allowed when the payload is a flatbuffer.
Returns IOX2_OK on success, an [iox2_type_detail_error_e] otherwise.
| int iox2_service_builder_request_response_set_response_header_type_details | ( | iox2_service_builder_request_response_h_ref | service_builder_handle, |
| enum iox2_type_variant_e | type_variant, | ||
| const char * | type_name_str, | ||
| c_size_t | type_name_len, | ||
| c_size_t | size, | ||
| c_size_t | alignment ) |
Sets the response header type details for the builder
Returns IOX2_OK on success, an [iox2_type_detail_error_e] otherwise.
| int iox2_service_builder_request_response_set_response_payload_type_details | ( | iox2_service_builder_request_response_h_ref | service_builder_handle, |
| enum iox2_type_variant_e | type_variant, | ||
| const char * | type_name_str, | ||
| c_size_t | type_name_len, | ||
| c_size_t | size, | ||
| c_size_t | alignment ) |
Sets the response payload type details for the builder
Returns IOX2_OK on success, an [iox2_type_detail_error_e] otherwise.
| int iox2_service_details | ( | enum iox2_service_type_e | service_type, |
| iox2_service_name_ptr | service_name, | ||
| iox2_config_ptr | config, | ||
| enum iox2_messaging_pattern_e | messaging_pattern, | ||
| struct iox2_static_config_t * | service_details, | ||
| bool * | does_exist ) |
Acquires the service details of a specified service. If the service exists service_details will contain the requested information, otherwise it is NULL. On error it returns iox2_service_details_error_e, on success IOX2_OK.
| const char * iox2_service_details_error_string | ( | enum iox2_service_details_error_e | error | ) |
Returns a string literal describing the provided [iox2_service_details_error_e].
A pointer to a null-terminated string containing the error message. The string is stored in the .rodata section of the binary.
The returned pointer must not be modified or freed and is valid as long as the program runs.
| int iox2_service_does_exist | ( | enum iox2_service_type_e | service_type, |
| iox2_service_name_ptr | service_name, | ||
| iox2_config_ptr | config, | ||
| enum iox2_messaging_pattern_e | messaging_pattern, | ||
| bool * | does_exist ) |
Checks if a specified service exists. If the service exists does_exist will contain true, otherwise false after the call. On error it returns iox2_service_details_error_e, on success IOX2_OK.
| int iox2_service_list | ( | enum iox2_service_type_e | service_type, |
| iox2_config_ptr | config_ptr, | ||
| iox2_service_list_callback | callback, | ||
| iox2_callback_context | callback_ctx ) |
Iterates over the all accessible services and calls the provided callback for every service with iox2_service_details as input argument. On error it returns iox2_service_list_error_e, otherwise IOX2_OK.
| const char * iox2_service_list_error_string | ( | enum iox2_service_list_error_e | error | ) |
Returns a string literal describing the provided [iox2_service_list_error_e].
A pointer to a null-terminated string containing the error message. The string is stored in the .rodata section of the binary.
The returned pointer must not be modified or freed and is valid as long as the program runs.
| const char * iox2_service_name_as_chars | ( | iox2_service_name_ptr | service_name_ptr, |
| c_size_t * | service_name_len ) |
This function gives access to the node name as a non-zero-terminated char array
Returns non-zero-terminated char array
| void iox2_service_name_drop | ( | iox2_service_name_h | service_name_handle | ) |
This function needs to be called to destroy the node name!
In general, this function is not required to call, since [iox2_node_builder_set_name](crate::iox2_node_builder_set_name) will consume the [iox2_service_name_h] handle.
| int iox2_service_name_new | ( | struct iox2_service_name_t * | service_name_struct_ptr, |
| const char * | service_name_str, | ||
| c_size_t | service_name_len, | ||
| iox2_service_name_h * | service_name_handle_ptr ) |
This function create a new node name!
Returns IOX2_OK on success, an [iox2_semantic_string_error_e] otherwise.
| void iox2_set_log_level | ( | enum iox2_log_level_e | v | ) |
| void iox2_set_log_level_from_env_or | ( | enum iox2_log_level_e | v | ) |
Sets the log level from environment variable or to a user given value if variable does not exist
When using external frameworks, the log level should be set explicitly, as only messages matching that level will be forwarded. You may also need to configure the framework’s own log level settings.
| void iox2_set_log_level_from_env_or_default | ( | void | ) |
| bool iox2_set_logger | ( | iox2_log_callback | logger | ) |
Sets the logger that shall be used. This function can only be called once and must be called before any log message was created. It returns true if the logger was set, otherwise false.
| c_size_t iox2_subscriber_buffer_size | ( | iox2_subscriber_h_ref | subscriber_handle | ) |
Returns the buffer size of the subscriber
| const char * iox2_subscriber_create_error_string | ( | enum iox2_subscriber_create_error_e | error | ) |
Returns a string literal describing the provided [iox2_subscriber_create_error_e].
A pointer to a null-terminated string containing the error message. The string is stored in the .rodata section of the binary.
The returned pointer must not be modified or freed and is valid as long as the program runs.
| c_size_t iox2_subscriber_details_buffer_size | ( | iox2_subscriber_details_ptr | handle | ) |
| c_size_t iox2_subscriber_details_history_request | ( | iox2_subscriber_details_ptr | handle | ) |
| iox2_unique_node_id_ptr iox2_subscriber_details_node_id | ( | iox2_subscriber_details_ptr | handle | ) |
Returns the [iox2_unique_node_id_ptr], an immutable pointer to the node id.
| void iox2_subscriber_details_subscriber_id | ( | iox2_subscriber_details_ptr | handle, |
| struct iox2_unique_subscriber_id_t * | id_struct_ptr, | ||
| iox2_unique_subscriber_id_h * | id_handle_ptr ) |
Returns the unique port id of the subscriber.
| iox2_port_name_ptr iox2_subscriber_details_subscriber_name | ( | iox2_subscriber_details_ptr | handle | ) |
Returns the [iox2_port_name_ptr], an immutable pointer to the name of the subscriber.
| void iox2_subscriber_drop | ( | iox2_subscriber_h | subscriber_handle | ) |
This function needs to be called to destroy the subscriber!
| int iox2_subscriber_has_samples | ( | iox2_subscriber_h_ref | subscriber_handle, |
| bool * | result_ptr ) |
Returns true when the subscriber has samples that can be acquired with [iox2_subscriber_receive], otherwise false.
Returns IOX2_OK on success, an [iox2_connection_failure_e] otherwise. Attention, an empty subscriber queue is not an error and even with IOX2_OK it is possible to get a NULL in sample_handle_ptr.
| void iox2_subscriber_id | ( | iox2_subscriber_h_ref | subscriber_handle, |
| struct iox2_unique_subscriber_id_t * | id_struct_ptr, | ||
| iox2_unique_subscriber_id_h * | id_handle_ptr ) |
Returns the unique port id of the subscriber.
| iox2_port_name_ptr iox2_subscriber_name | ( | iox2_subscriber_h_ref | subscriber_handle | ) |
Returns the [iox2_port_name_ptr], an immutable pointer to the port name.
| int iox2_subscriber_receive | ( | iox2_subscriber_h_ref | subscriber_handle, |
| struct iox2_sample_t * | sample_struct_ptr, | ||
| iox2_sample_h * | sample_handle_ptr ) |
Takes a sample ouf of the subscriber queue.
Returns IOX2_OK on success, an [iox2_receive_error_e] otherwise. Attention, an empty subscriber queue is not an error and even with IOX2_OK it is possible to get a NULL in sample_handle_ptr.
| void iox2_testing_create_test_directory | ( | void | ) |
Creates a directory to store test artifacts.
| void iox2_testing_generate_file_name | ( | char * | name, |
| size_t | buffer_len ) |
| void iox2_testing_generate_file_path | ( | char * | name, |
| size_t | buffer_len ) |
| void iox2_testing_test_directory_path | ( | char * | name, |
| size_t | buffer_len ) |
| void iox2_unique_client_id_drop | ( | iox2_unique_client_id_h | handle | ) |
This function needs to be called to destroy the unique client id!
| bool iox2_unique_client_id_eq | ( | iox2_unique_client_id_h_ref | lhs, |
| iox2_unique_client_id_h_ref | rhs ) |
Checks two [iox2_unique_client_id_t] for equality.
| bool iox2_unique_client_id_less | ( | iox2_unique_client_id_h_ref | lhs, |
| iox2_unique_client_id_h_ref | rhs ) |
Checks the ordering of two [iox2_unique_client_id_t].
| void iox2_unique_client_id_value | ( | iox2_unique_client_id_h | handle, |
| uint8_t * | id_ptr, | ||
| size_t | id_length ) |
Retrieves the value of a unique client ID.
| void iox2_unique_listener_id_drop | ( | iox2_unique_listener_id_h | handle | ) |
This function needs to be called to destroy the unique listener id!
| bool iox2_unique_listener_id_eq | ( | iox2_unique_listener_id_h_ref | lhs, |
| iox2_unique_listener_id_h_ref | rhs ) |
Checks two [iox2_unique_listener_id_t] for equality.
| bool iox2_unique_listener_id_less | ( | iox2_unique_listener_id_h_ref | lhs, |
| iox2_unique_listener_id_h_ref | rhs ) |
Checks the ordering of two [iox2_unique_listener_id_t].
| void iox2_unique_listener_id_value | ( | iox2_unique_listener_id_h | handle, |
| uint8_t * | id_ptr, | ||
| size_t | id_length ) |
Retrieves the value of a unique listener ID.
| iox2_unique_node_id_ptr iox2_unique_node_id | ( | iox2_node_h_ref | node_handle, |
| enum iox2_service_type_e | service_type ) |
Returns the [iox2_unique_node_id_ptr], an immutable pointer to the node id.
| void iox2_unique_node_id_clone_from_handle | ( | struct iox2_unique_node_id_t * | node_id_struct_ptr, |
| iox2_unique_node_id_h_ref | node_id_handle, | ||
| iox2_unique_node_id_h * | node_id_handle_ptr ) |
Creates a new [iox2_unique_node_id_h] by cloning a [iox2_unique_node_id_h_ref].
| void iox2_unique_node_id_clone_from_ptr | ( | struct iox2_unique_node_id_t * | node_id_struct_ptr, |
| iox2_unique_node_id_ptr | node_id_ptr, | ||
| iox2_unique_node_id_h * | node_id_handle_ptr ) |
Creates a new [iox2_unique_node_id_h] by cloning a [iox2_unique_node_id_ptr].
| int iox2_unique_node_id_creation_time | ( | iox2_unique_node_id_h_ref | node_id_handle, |
| enum iox2_service_type_e | service_type, | ||
| uint64_t * | seconds, | ||
| uint32_t * | nanoseconds ) |
Returns the creation time of the [iox2_unique_node_id_h].
| void iox2_unique_node_id_drop | ( | iox2_unique_node_id_h | node_id_handle | ) |
Takes ownership of the handle to delete and remove the underlying resources of a [iox2_unique_node_id_h].
| int iox2_unique_node_id_pid | ( | iox2_unique_node_id_h_ref | node_id_handle, |
| enum iox2_service_type_e | service_type, | ||
| int32_t * | process_id ) |
Copies the process id of the [iox2_unique_node_id_h] to process_id.
| uint64_t iox2_unique_node_id_value_high | ( | iox2_unique_node_id_h_ref | node_id_handle | ) |
Returns the high bits of the underlying value of the [iox2_unique_node_id_h].
| uint64_t iox2_unique_node_id_value_low | ( | iox2_unique_node_id_h_ref | node_id_handle | ) |
Returns the low bits of the underlying value of the [iox2_unique_node_id_h].
| void iox2_unique_notifier_id_drop | ( | iox2_unique_notifier_id_h | handle | ) |
This function needs to be called to destroy the unique notifier id!
| bool iox2_unique_notifier_id_eq | ( | iox2_unique_notifier_id_h_ref | lhs, |
| iox2_unique_notifier_id_h_ref | rhs ) |
Checks two [iox2_unique_notifier_id_t] for equality.
| bool iox2_unique_notifier_id_less | ( | iox2_unique_notifier_id_h_ref | lhs, |
| iox2_unique_notifier_id_h_ref | rhs ) |
Checks the ordering of two [iox2_unique_notifier_id_t].
| void iox2_unique_notifier_id_value | ( | iox2_unique_notifier_id_h | handle, |
| uint8_t * | id_ptr, | ||
| size_t | id_length ) |
Retrieves the value of a unique notifier ID.
| void iox2_unique_publisher_id_drop | ( | iox2_unique_publisher_id_h | handle | ) |
This function needs to be called to destroy the unique publisher id!
| bool iox2_unique_publisher_id_eq | ( | iox2_unique_publisher_id_h_ref | lhs, |
| iox2_unique_publisher_id_h_ref | rhs ) |
Checks two [iox2_unique_publisher_id_t] for equality.
| bool iox2_unique_publisher_id_less | ( | iox2_unique_publisher_id_h_ref | lhs, |
| iox2_unique_publisher_id_h_ref | rhs ) |
Checks the ordering of two [iox2_unique_publisher_id_t].
| void iox2_unique_publisher_id_value | ( | iox2_unique_publisher_id_h | handle, |
| uint8_t * | id_ptr, | ||
| size_t | id_length ) |
Retrieves the value of a unique publisher ID.
| void iox2_unique_reader_id_drop | ( | iox2_unique_reader_id_h | handle | ) |
This function needs to be called to destroy the unique reader id!
| bool iox2_unique_reader_id_eq | ( | iox2_unique_reader_id_h_ref | lhs, |
| iox2_unique_reader_id_h_ref | rhs ) |
Checks two [iox2_unique_reader_id_t] for equality.
| bool iox2_unique_reader_id_less | ( | iox2_unique_reader_id_h_ref | lhs, |
| iox2_unique_reader_id_h_ref | rhs ) |
Checks the ordering of two [iox2_unique_reader_id_t].
| void iox2_unique_reader_id_value | ( | iox2_unique_reader_id_h | handle, |
| uint8_t * | id_ptr, | ||
| size_t | id_length ) |
Retrieves the value of a unique reader ID.
| void iox2_unique_server_id_drop | ( | iox2_unique_server_id_h | handle | ) |
This function needs to be called to destroy the unique server id!
| bool iox2_unique_server_id_eq | ( | iox2_unique_server_id_h_ref | lhs, |
| iox2_unique_server_id_h_ref | rhs ) |
Checks two [iox2_unique_server_id_t] for equality.
| bool iox2_unique_server_id_less | ( | iox2_unique_server_id_h_ref | lhs, |
| iox2_unique_server_id_h_ref | rhs ) |
Checks the ordering of two [iox2_unique_server_id_t].
| void iox2_unique_server_id_value | ( | iox2_unique_server_id_h | handle, |
| uint8_t * | id_ptr, | ||
| size_t | id_length ) |
Retrieves the value of a unique server ID.
| void iox2_unique_subscriber_id_drop | ( | iox2_unique_subscriber_id_h | handle | ) |
This function needs to be called to destroy the unique subscriber id!
| bool iox2_unique_subscriber_id_eq | ( | iox2_unique_subscriber_id_h_ref | lhs, |
| iox2_unique_subscriber_id_h_ref | rhs ) |
Checks two [iox2_unique_subscriber_id_t] for equality.
| bool iox2_unique_subscriber_id_less | ( | iox2_unique_subscriber_id_h_ref | lhs, |
| iox2_unique_subscriber_id_h_ref | rhs ) |
Checks the ordering of two [iox2_unique_subscriber_id_t].
| void iox2_unique_subscriber_id_value | ( | iox2_unique_subscriber_id_h | handle, |
| uint8_t * | id_ptr, | ||
| size_t | id_length ) |
Retrieves the value of a unique subscriber ID.
| void iox2_unique_writer_id_drop | ( | iox2_unique_writer_id_h | handle | ) |
This function needs to be called to destroy the unique writer id!
| bool iox2_unique_writer_id_eq | ( | iox2_unique_writer_id_h_ref | lhs, |
| iox2_unique_writer_id_h_ref | rhs ) |
Checks two [iox2_unique_writer_id_t] for equality.
| bool iox2_unique_writer_id_less | ( | iox2_unique_writer_id_h_ref | lhs, |
| iox2_unique_writer_id_h_ref | rhs ) |
Checks the ordering of two [iox2_unique_writer_id_t].
| void iox2_unique_writer_id_value | ( | iox2_unique_writer_id_h | handle, |
| uint8_t * | id_ptr, | ||
| size_t | id_length ) |
Retrieves the value of a unique writer ID.
| int iox2_waitset_attach_deadline | ( | iox2_waitset_h_ref | handle, |
| iox2_file_descriptor_ptr | fd, | ||
| uint64_t | seconds, | ||
| uint32_t | nanoseconds, | ||
| struct iox2_waitset_guard_t * | guard_struct_ptr, | ||
| iox2_waitset_guard_h * | guard_handle_ptr ) |
Attaches a provided [iox2_file_descriptor_ptr] as deadline to the [iox2_waitset_h]. As soon as the attachment receives data or the deadline was missed, the WaitSet wakes up in [iox2_waitset_wait_and_process()] and informs the user.
With [iox2_waitset_attachment_id_has_event_from()](crate::iox2_waitset_attachment_id_has_event_from()) the origin of the event can be determined from its corresponding [iox2_waitset_guard_h]. If the deadline was hit the function [iox2_waitset_attachment_id_has_missed_deadline()](crate::iox2_waitset_attachment_id_has_missed_deadline()) can be used to identify it.
IOX2_OK on success, otherwise [iox2_waitset_attachment_error_e].
| int iox2_waitset_attach_interval | ( | iox2_waitset_h_ref | handle, |
| uint64_t | seconds, | ||
| uint32_t | nanoseconds, | ||
| struct iox2_waitset_guard_t * | guard_struct_ptr, | ||
| iox2_waitset_guard_h * | guard_handle_ptr ) |
Attaches an interval to the [iox2_waitset_h]. As soon as the interval has passed the WaitSet wakes up in [iox2_waitset_wait_and_process()] and informs the user.
With [iox2_waitset_attachment_id_has_event_from()](crate::iox2_waitset_attachment_id_has_event_from()) the origin of the event can be determined from its corresponding [iox2_waitset_guard_h].
IOX2_OK on success, otherwise [iox2_waitset_attachment_error_e].
| int iox2_waitset_attach_notification | ( | iox2_waitset_h_ref | handle, |
| iox2_file_descriptor_ptr | fd, | ||
| struct iox2_waitset_guard_t * | guard_struct_ptr, | ||
| iox2_waitset_guard_h * | guard_handle_ptr ) |
Attaches a provided [iox2_file_descriptor_ptr] as notification to the [iox2_waitset_h]. As soon as the attachment receives data, the WaitSet wakes up in [iox2_waitset_wait_and_process()] and informs the user.
With [iox2_waitset_attachment_id_has_event_from()](crate::iox2_waitset_attachment_id_has_event_from()) the origin of the event can be determined from its corresponding [iox2_waitset_guard_h].
IOX2_OK on success, otherwise [iox2_waitset_attachment_error_e].
| const char * iox2_waitset_attachment_error_string | ( | enum iox2_waitset_attachment_error_e | error | ) |
Returns a string literal describing the provided [iox2_waitset_attachment_error_e].
A pointer to a null-terminated string containing the error message. The string is stored in the .rodata section of the binary.
The returned pointer must not be modified or freed and is valid as long as the program runs.
| bool iox2_waitset_attachment_id_debug | ( | iox2_waitset_attachment_id_h_ref | handle, |
| char * | debug_output, | ||
| c_size_t | debug_len ) |
Stores the debug output in the provided debug_output variable that must provide enough memory to store the content. The content length can be acquired with [iox2_waitset_attachment_id_debug_len()]
| c_size_t iox2_waitset_attachment_id_debug_len | ( | iox2_waitset_attachment_id_h_ref | handle | ) |
Returns the length of the debug output. Shall be used before calling [iox2_waitset_attachment_id_debug()] to acquire enough memory to store the output.
| void iox2_waitset_attachment_id_drop | ( | iox2_waitset_attachment_id_h | handle | ) |
Release an [iox2_waitset_attachment_id_h] that was acquired by calling either
| bool iox2_waitset_attachment_id_equal | ( | iox2_waitset_attachment_id_h_ref | lhs, |
| iox2_waitset_attachment_id_h_ref | rhs ) |
Checks if two provided [iox2_waitset_attachment_id_h_ref] are semantically equal.
| void iox2_waitset_attachment_id_from_guard | ( | iox2_waitset_guard_h_ref | guard, |
| struct iox2_waitset_attachment_id_t * | attachment_id_struct_ptr, | ||
| iox2_waitset_attachment_id_h * | attachment_id_handle_ptr ) |
Creates a new [iox2_waitset_attachment_id_t] from an existing [iox2_waitset_guard_h_ref].
| bool iox2_waitset_attachment_id_has_event_from | ( | iox2_waitset_attachment_id_h_ref | handle, |
| iox2_waitset_guard_h_ref | guard ) |
Checks if the event corresponding to [iox2_waitset_guard_h_ref] was originating from the provided [iox2_waitset_attachment_id_h_ref].
| bool iox2_waitset_attachment_id_has_missed_deadline | ( | iox2_waitset_attachment_id_h_ref | handle, |
| iox2_waitset_guard_h_ref | guard ) |
Checks if the deadline corresponding to [iox2_waitset_guard_h_ref] was originating from the provided [iox2_waitset_attachment_id_h_ref].
| bool iox2_waitset_attachment_id_less | ( | iox2_waitset_attachment_id_h_ref | lhs, |
| iox2_waitset_attachment_id_h_ref | rhs ) |
Checks the ordering of two provided [iox2_waitset_attachment_id_h_ref].
| int iox2_waitset_builder_create | ( | iox2_waitset_builder_h | handle, |
| struct iox2_waitset_t * | struct_ptr, | ||
| iox2_waitset_h * | handle_ptr ) |
Creates a new [iox2_waitset_t].
[IOX2_OK] on success otherwise [iox2_waitset_create_error_e](crate::iox2_waitset_create_error_e).
| void iox2_waitset_builder_drop | ( | iox2_waitset_builder_h | handle | ) |
Drops a [iox2_waitset_builder_h] and calls all corresponding cleanup functions.
| void iox2_waitset_builder_set_signal_handling_mode | ( | iox2_waitset_builder_h_ref | handle, |
| enum iox2_signal_handling_mode_e | signal_handling_mode ) |
Sets the [iox2_signal_handling_mode_e] for the [iox2_waitset_h].
| c_size_t iox2_waitset_capacity | ( | iox2_waitset_h_ref | handle | ) |
Returns the capacity of the [iox2_waitset_h].
| const char * iox2_waitset_create_error_string | ( | enum iox2_waitset_create_error_e | error | ) |
Returns a string literal describing the provided [iox2_waitset_create_error_e].
A pointer to a null-terminated string containing the error message. The string is stored in the .rodata section of the binary.
The returned pointer must not be modified or freed and is valid as long as the program runs.
| void iox2_waitset_drop | ( | iox2_waitset_h | handle | ) |
Drops a [iox2_waitset_h] and calls all corresponding cleanup functions.
| void iox2_waitset_guard_drop | ( | iox2_waitset_guard_h | handle | ) |
Drops a [iox2_waitset_guard_h] that was successfully acquired with
| bool iox2_waitset_is_empty | ( | iox2_waitset_h_ref | handle | ) |
Returns true if the [iox2_waitset_h] is empty, otherwise false.
| c_size_t iox2_waitset_len | ( | iox2_waitset_h_ref | handle | ) |
Returns the number of attachments of the [iox2_waitset_h].
| const char * iox2_waitset_run_error_string | ( | enum iox2_waitset_run_error_e | error | ) |
Returns a string literal describing the provided [iox2_waitset_run_error_e].
A pointer to a null-terminated string containing the error message. The string is stored in the .rodata section of the binary.
The returned pointer must not be modified or freed and is valid as long as the program runs.
| enum iox2_signal_handling_mode_e iox2_waitset_signal_handling_mode | ( | iox2_waitset_h_ref | handle | ) |
Returns the [iox2_signal_handling_mode_e] with which the waitset was created.
| int iox2_waitset_wait_and_process | ( | iox2_waitset_h_ref | handle, |
| iox2_waitset_run_callback | callback, | ||
| iox2_callback_context | callback_ctx, | ||
| enum iox2_waitset_run_result_e * | result ) |
Checks the [iox2_waitset_h] for new events in an infinite loop. The provided callback is called for every events that was received and the corresponding owning [iox2_waitset_attachment_id_h] is provided as input argument, as well as the callback_ctx. The infinite loop is interrupted either by a SIGINT or SIGTERM signal or when the user callback returned [iox2_callback_progression_e::STOP].
With [iox2_waitset_attachment_id_has_event_from()](crate::iox2_waitset_attachment_id_has_event_from()) the origin of the event can be determined from its corresponding [iox2_waitset_guard_h]. If the deadline was hit the function [iox2_waitset_attachment_id_has_missed_deadline()](crate::iox2_waitset_attachment_id_has_missed_deadline()) can be used to identify it.
Important: The WaitSet only reports that an attachment is ready; it does not consume the notification or data that caused the wake-up. If the callback returns without consuming any pending input, the attachment remains ready and the WaitSet wakes up again immediately. Repeating this can cause a busy loop and high CPU usage.
For a Listener, consume pending notifications with iox2_listener_try_wait(). For a socket or another file-descriptor-based attachment, consume the pending data using its corresponding read or receive API.
IOX2_OK on success, otherwise [iox2_waitset_run_error_e].
| int iox2_waitset_wait_and_process_once | ( | iox2_waitset_h_ref | handle, |
| iox2_waitset_run_callback | callback, | ||
| iox2_callback_context | callback_ctx, | ||
| enum iox2_waitset_run_result_e * | result ) |
Waits until an event arrives on the [iox2_waitset_h], then collects all events by calling the provided fn_call callback with the corresponding [iox2_waitset_attachment_id_h] and then returns. This makes it ideal to be called in some kind of event-loop.
The provided callback must return [iox2_callback_progression_e::CONTINUE] to continue the event processing and handle the next event or [iox2_callback_progression_e::STOP] to return from this call immediately. All unhandled events will be lost forever and the call will return [iox2_waitset_run_result_e::STOP_REQUEST].
If an interrupt- (SIGINT) or a termination-signal (SIGTERM) was received, it will exit the loop and inform the user with [iox2_waitset_run_result_e::INTERRUPT] or [iox2_waitset_run_result_e::TERMINATION_REQUEST].
When no signal was received and all events were handled, it will return [iox2_waitset_run_result_e::ALL_EVENTS_HANDLED].
Important: The WaitSet only reports that an attachment is ready; it does not consume the notification or data that caused the wake-up. If the callback returns without consuming any pending input, the attachment remains ready and the WaitSet wakes up again immediately. Repeating this can cause a busy loop and high CPU usage.
For a Listener, consume pending notifications with iox2_listener_try_wait(). For a socket or another file-descriptor-based attachment, consume the pending data using its corresponding read or receive API.
IOX2_OK on success, otherwise [iox2_waitset_run_error_e].
| int iox2_waitset_wait_and_process_once_with_timeout | ( | iox2_waitset_h_ref | handle, |
| iox2_waitset_run_callback | callback, | ||
| iox2_callback_context | callback_ctx, | ||
| uint64_t | seconds, | ||
| uint32_t | nanoseconds, | ||
| enum iox2_waitset_run_result_e * | result ) |
Waits until an event arrives on the [iox2_waitset_h] or the provided timeout has passed, then collects all events by calling the provided fn_call callback with the corresponding [iox2_waitset_attachment_id_h] and then returns. This makes it ideal to be called in some kind of event-loop.
The provided callback must return [iox2_callback_progression_e::CONTINUE] to continue the event processing and handle the next event or [iox2_callback_progression_e::STOP] to return from this call immediately. All unhandled events will be lost forever and the call will return [iox2_waitset_run_result_e::STOP_REQUEST].
If an interrupt- (SIGINT) or a termination-signal (SIGTERM) was received, it will exit the loop and inform the user with [iox2_waitset_run_result_e::INTERRUPT] or [iox2_waitset_run_result_e::TERMINATION_REQUEST].
When no signal was received and all events were handled, it will return [iox2_waitset_run_result_e::ALL_EVENTS_HANDLED].
Important: The WaitSet only reports that an attachment is ready; it does not consume the notification or data that caused the wake-up. If the callback returns without consuming any pending input, the attachment remains ready and the WaitSet wakes up again immediately. Repeating this can cause a busy loop and high CPU usage.
For a Listener, consume pending notifications with iox2_listener_try_wait(). For a socket or another file-descriptor-based attachment, consume the pending data using its corresponding read or receive API.
IOX2_OK on success, otherwise [iox2_waitset_run_error_e].
| const char * iox2_writer_create_error_string | ( | enum iox2_writer_create_error_e | error | ) |
Returns a string literal describing the provided [iox2_writer_create_error_e].
A pointer to a null-terminated string containing the error message. The string is stored in the .rodata section of the binary.
The returned pointer must not be modified or freed and is valid as long as the program runs.
| iox2_unique_node_id_ptr iox2_writer_details_node_id | ( | iox2_writer_details_ptr | handle | ) |
Returns the [iox2_unique_node_id_ptr], an immutable pointer to the node id.
| void iox2_writer_details_writer_id | ( | iox2_writer_details_ptr | handle, |
| struct iox2_unique_writer_id_t * | id_struct_ptr, | ||
| iox2_unique_writer_id_h * | id_handle_ptr ) |
Returns the unique port id of the writer.
| iox2_port_name_ptr iox2_writer_details_writer_name | ( | iox2_writer_details_ptr | handle | ) |
Returns the [iox2_port_name_ptr], an immutable pointer to the name of the writer.
| void iox2_writer_drop | ( | iox2_writer_h | writer_handle | ) |
This function needs to be called to destroy the writer!
| int iox2_writer_entry | ( | iox2_writer_h_ref | writer_handle, |
| struct iox2_entry_handle_mut_t * | entry_handle_mut_struct_ptr, | ||
| iox2_entry_handle_mut_h * | entry_handle_mut_handle_ptr, | ||
| const void * | key, | ||
| const char * | value_type_name_str, | ||
| c_size_t | value_type_name_len, | ||
| c_size_t | value_size, | ||
| c_size_t | value_alignment ) |
Acquires an entry handle mut for direct write access to the stored value.
| void iox2_writer_id | ( | iox2_writer_h_ref | writer_handle, |
| struct iox2_unique_writer_id_t * | id_struct_ptr, | ||
| iox2_unique_writer_id_h * | id_handle_ptr ) |
Returns the unique port id of the writer.
| iox2_port_name_ptr iox2_writer_name | ( | iox2_writer_h_ref | writer_handle | ) |
Returns the [iox2_port_name_ptr], an immutable pointer to the port name.
| void rust_eh_personality | ( | void | ) |
| iox2_active_request_storage_t |
Definition at line 2188 of file iceoryx2.h.
| iox2_attribute_set_storage_t |
Definition at line 872 of file iceoryx2.h.
| iox2_attribute_specifier_storage_t |
Definition at line 898 of file iceoryx2.h.
| iox2_attribute_verifier_storage_t |
Definition at line 917 of file iceoryx2.h.
| iox2_buffer_16_align_4_t |
Definition at line 938 of file iceoryx2.h.
Referenced by __attribute__(), iox2_backpressure_info_receiver_port_id(), iox2_backpressure_info_sender_port_id(), iox2_backpressure_info_service_id(), iox2_degradation_info_receiver_port_id(), iox2_degradation_info_sender_port_id(), and iox2_degradation_info_service_id().
| iox2_client_storage_t |
Definition at line 1522 of file iceoryx2.h.
| iox2_config_storage_t |
Definition at line 1027 of file iceoryx2.h.
| iox2_entry_handle_mut_storage_t |
Definition at line 1090 of file iceoryx2.h.
| iox2_entry_handle_storage_t |
Definition at line 2027 of file iceoryx2.h.
| iox2_entry_value_uninit_storage_t |
Definition at line 1065 of file iceoryx2.h.
| iox2_file_descriptor_storage_t |
Definition at line 1115 of file iceoryx2.h.
| iox2_listener_storage_t |
Definition at line 1619 of file iceoryx2.h.
| iox2_node_builder_storage_t |
Definition at line 1272 of file iceoryx2.h.
| iox2_node_name_storage_t |
Definition at line 1296 of file iceoryx2.h.
| iox2_node_storage_t |
Definition at line 1286 of file iceoryx2.h.
| iox2_notifier_storage_t |
Definition at line 1634 of file iceoryx2.h.
| iox2_pending_response_storage_t |
Definition at line 989 of file iceoryx2.h.
| iox2_port_factory_blackboard_storage_t |
Definition at line 2255 of file iceoryx2.h.
| iox2_port_factory_client_builder_storage_t |
Definition at line 1816 of file iceoryx2.h.
| iox2_port_factory_event_storage_t |
Definition at line 2270 of file iceoryx2.h.
| iox2_port_factory_listener_builder_storage_t |
Definition at line 1578 of file iceoryx2.h.
| iox2_port_factory_notifier_builder_storage_t |
Definition at line 1563 of file iceoryx2.h.
| iox2_port_factory_pub_sub_storage_t |
Definition at line 2285 of file iceoryx2.h.
| iox2_port_factory_publisher_builder_storage_t |
Definition at line 1659 of file iceoryx2.h.
| iox2_port_factory_reader_builder_storage_t |
Definition at line 1392 of file iceoryx2.h.
| iox2_port_factory_request_response_storage_t |
Definition at line 2300 of file iceoryx2.h.
| iox2_port_factory_server_builder_storage_t |
Definition at line 1806 of file iceoryx2.h.
| iox2_port_factory_subscriber_builder_storage_t |
Definition at line 1674 of file iceoryx2.h.
| iox2_port_factory_writer_builder_storage_t |
Definition at line 1377 of file iceoryx2.h.
| iox2_port_name_storage_t |
Definition at line 1944 of file iceoryx2.h.
| iox2_publish_subscribe_header_storage_t |
Definition at line 2159 of file iceoryx2.h.
| iox2_publisher_storage_t |
Definition at line 1756 of file iceoryx2.h.
| iox2_reader_storage_t |
Definition at line 1776 of file iceoryx2.h.
| iox2_request_header_storage_t |
Definition at line 839 of file iceoryx2.h.
Referenced by __attribute__().
| iox2_request_mut_storage_t |
Definition at line 974 of file iceoryx2.h.
| iox2_resizable_memory_publish_subscribe_storage_t |
Definition at line 2173 of file iceoryx2.h.
| iox2_resizable_memory_request_storage_t |
Definition at line 2047 of file iceoryx2.h.
| iox2_resizable_memory_response_storage_t |
Definition at line 2136 of file iceoryx2.h.
| iox2_response_header_storage_t |
Definition at line 2095 of file iceoryx2.h.
| iox2_response_mut_storage_t |
Definition at line 855 of file iceoryx2.h.
| iox2_response_storage_t |
Definition at line 1347 of file iceoryx2.h.
Referenced by __attribute__().
| iox2_sample_mut_storage_t |
Definition at line 1990 of file iceoryx2.h.
| iox2_sample_storage_t |
Definition at line 2346 of file iceoryx2.h.
| iox2_server_storage_t |
Definition at line 1889 of file iceoryx2.h.
| iox2_service_builder_storage_t |
Definition at line 1242 of file iceoryx2.h.
| iox2_service_name_storage_t |
Definition at line 2310 of file iceoryx2.h.
| iox2_subscriber_storage_t |
Definition at line 1909 of file iceoryx2.h.
| iox2_unique_client_id_storage_t |
Definition at line 955 of file iceoryx2.h.
| iox2_unique_listener_id_storage_t |
Definition at line 1139 of file iceoryx2.h.
| iox2_unique_node_id_storage_t |
Definition at line 2366 of file iceoryx2.h.
| iox2_unique_notifier_id_storage_t |
Definition at line 1323 of file iceoryx2.h.
| iox2_unique_publisher_id_storage_t |
Definition at line 1971 of file iceoryx2.h.
| iox2_unique_reader_id_storage_t |
Definition at line 2013 of file iceoryx2.h.
| iox2_unique_server_id_storage_t |
Definition at line 2117 of file iceoryx2.h.
| iox2_unique_subscriber_id_storage_t |
Definition at line 2332 of file iceoryx2.h.
| iox2_unique_writer_id_storage_t |
Definition at line 2486 of file iceoryx2.h.
| iox2_waitset_attachment_id_storage_t |
Definition at line 2453 of file iceoryx2.h.
| iox2_waitset_builder_storage_t |
Definition at line 1257 of file iceoryx2.h.
| iox2_waitset_guard_storage_t |
Definition at line 2420 of file iceoryx2.h.
| iox2_waitset_storage_t |
Definition at line 2463 of file iceoryx2.h.
| iox2_writer_storage_t |
Definition at line 1929 of file iceoryx2.h.