17#ifndef IOX_BINDING_C_CLIENT_H
18#define IOX_BINDING_C_CLIENT_H
20#include "iceoryx_binding_c/config.h"
21#include "iceoryx_binding_c/enums.h"
22#include "iceoryx_binding_c/service_description.h"
23#include "iceoryx_binding_c/types.h"
26typedef CLASS UntypedClient* iox_client_t;
35 char nodeName[IOX_CONFIG_NODE_NAME_SIZE];
73 const char*
const service,
74 const char*
const instance,
75 const char*
const event,
80void iox_client_deinit(iox_client_t
const self);
90ENUM iox_AllocationResult iox_client_loan_request(iox_client_t
const self,
92 const uint32_t payloadSize);
101ENUM iox_AllocationResult iox_client_loan_aligned_request(iox_client_t
const self,
102 void**
const payload,
103 const uint32_t payloadSize,
104 const uint32_t payloadAlignment);
110void iox_client_release_request(iox_client_t
const self,
void*
const payload);
117ENUM iox_ClientSendResult iox_client_send(iox_client_t
const self,
void*
const payload);
121void iox_client_connect(iox_client_t
const self);
125void iox_client_disconnect(iox_client_t
const self);
131ENUM iox_ConnectionState iox_client_get_connection_state(iox_client_t
const self);
138ENUM iox_ChunkReceiveResult iox_client_take_response(iox_client_t
const self,
const void**
const payload);
143void iox_client_release_response(iox_client_t
const self,
const void*
const payload);
147void iox_client_release_queued_responses(iox_client_t
const self);
152bool iox_client_has_responses(iox_client_t
const self);
157bool iox_client_has_missed_responses(iox_client_t
const self);
options to be set for a client
Definition: client.h:30
uint64_t responseQueueCapacity
size of the response queue
Definition: client.h:32
ENUM iox_ConsumerTooSlowPolicy serverTooSlowPolicy
Sets whether the client blocks when the server request queue is full.
Definition: client.h:44
uint64_t initCheck
this value will be set exclusively by iox_client_options_init and is not supposed to be modified othe...
Definition: client.h:48
ENUM iox_QueueFullPolicy responseQueueFullPolicy
Sets whether the server blocks when the client response queue is full.
Definition: client.h:41
bool connectOnCreate
Indicates if the client should be connected when created.
Definition: client.h:38
has exactly the size required to store the underlying object of iox_client_t
Definition: types.h:73
Definition: service_description.h:25