46#ifndef DW_IPC_SOCKETCLIENTSERVER_H_
47#define DW_IPC_SOCKETCLIENTSERVER_H_
NVIDIA DriveWorks API: Core Status Methods
NVIDIA DriveWorks API: Core Types
NVIDIA DriveWorks API: Core Methods
NVIDIA DriveWorks API: Core Exports
struct dwContextObject const * dwConstContextHandle_t
dwStatus
Status definition.
int64_t dwTime_t
Specifies a timestamp unit, in microseconds.
DW_API_PUBLIC dwStatus dwSocketServer_release(dwSocketServerHandle_t const server)
Terminate a socket server.
DW_API_PUBLIC dwStatus dwSocketServer_broadcast(uint8_t const *const buffer, size_t const bufferSize, dwSocketServerHandle_t const server)
Broadcasts a message to all connected sockets of the pool.
DW_API_PUBLIC dwStatus dwSocketClient_connect(dwSocketConnectionHandle_t *const connection, char8_t const *const host, uint16_t const port, dwTime_t const timeoutUs, dwSocketClientHandle_t const client)
Connects a socket connection to a listening socket server.
DW_API_PUBLIC dwStatus dwSocketClient_release(dwSocketClientHandle_t const client)
Terminate a socket client.
DW_API_PUBLIC dwStatus dwSocketConnection_release(dwSocketConnectionHandle_t const connection)
Terminate a socket connection.
DW_API_PUBLIC dwStatus dwSocketConnection_read(void *const buffer, size_t *const bufferSize, dwTime_t const timeoutUs, dwSocketConnectionHandle_t const connection)
Receive a message of a given length from the network connection.
struct dwSocketServerObject * dwSocketServerHandle_t
Handle representing the a network socket server.
struct dwSocketClientObject * dwSocketClientHandle_t
Handle representing the a network socket client.
struct dwSocketConnectionObject * dwSocketConnectionHandle_t
Handle representing the a bi-directional client-server network socket connection.
DW_API_PUBLIC dwStatus dwSocketClient_initialize(dwSocketClientHandle_t *const client, size_t const connectionPoolSize, dwConstContextHandle_t const context)
Creates and initializes a socket client.
DW_API_PUBLIC dwStatus dwSocketServer_initialize(dwSocketServerHandle_t *const server, uint16_t const port, size_t const connectionPoolSize, dwConstContextHandle_t const context)
Creates and initializes a socket server accepting incoming client connections.
DW_API_PUBLIC dwStatus dwSocketConnection_write(const void *const buffer, size_t *const bufferSize, dwTime_t const timeoutUs, dwSocketConnectionHandle_t const connection)
Send a message of a given length through the socket connection with a timeout.
DW_API_PUBLIC dwStatus dwSocketClient_broadcast(uint8_t const *const buffer, size_t const bufferSize, dwSocketClientHandle_t const client)
Broadcasts a message to all connected sockets of the pool.
DW_API_PUBLIC dwStatus dwSocketConnection_peek(uint8_t *const buffer, size_t *const bufferSize, dwTime_t const timeoutUs, dwSocketConnectionHandle_t const connection)
Peek at a message of a given length from the network connection (blocking within timeout period).
DW_API_PUBLIC dwStatus dwSocketServer_accept(dwSocketConnectionHandle_t *const connection, dwTime_t const timeoutUs, dwSocketServerHandle_t const server)
Accepts an incoming connection at a socket server.