VLink  2.0.0
A high-performance communication middleware
vlink::ProxyAPI::Config Struct Referencefinal

Construction-time configuration aggregate for ProxyAPI. More...

#include <proxy_api.h>

Collaboration diagram for vlink::ProxyAPI::Config:

Public Attributes

Role role {kController}
 Role of this client instance. More...
 
int domain_id {0}
 DDS domain ID; must match the server's domain_id. More...
 
std::string dds_impl {"dds"}
 DDS implementation: "dds", "ddsc", "ddsr", etc. More...
 
std::string security_key
 Optional security key; empty selects the default slot. More...
 
bool native {false}
 When true, restrict all DDS traffic to 127.0.0.1. More...
 
bool reliable {false}
 Use reliable DDS QoS; must match the server. More...
 
bool direct {false}
 Use direct SHM channels for data; must match the server. More...
 
bool enable_tcp {false}
 Use TCP transport for data channels; must match the server. More...
 
bool match_version {true}
 Reject when the server's VLINK_VERSION differs from this client. More...
 
std::string allow_ip
 Bind DDS sockets to this IP (empty = any). More...
 
std::string peer_ip
 Unicast peer IP for DDS discovery (empty = multicast). More...
 
int buf_size {0}
 Socket send/receive buffer in bytes; 0 = default. More...
 
int mtu_size {0}
 DDS MTU size in bytes; 0 = default. More...
 

Detailed Description

Construction-time configuration aggregate for ProxyAPI.

Every field must be set consistently with the ProxyServer::Config the instance connects to. A mismatch on reliable, enable_tcp, or direct raises the corresponding Error code on the first heartbeat received.

Member Data Documentation

◆ allow_ip

std::string vlink::ProxyAPI::Config::allow_ip

Bind DDS sockets to this IP (empty = any).

◆ buf_size

int vlink::ProxyAPI::Config::buf_size {0}

Socket send/receive buffer in bytes; 0 = default.

◆ dds_impl

std::string vlink::ProxyAPI::Config::dds_impl {"dds"}

DDS implementation: "dds", "ddsc", "ddsr", etc.

◆ direct

bool vlink::ProxyAPI::Config::direct {false}

Use direct SHM channels for data; must match the server.

◆ domain_id

int vlink::ProxyAPI::Config::domain_id {0}

DDS domain ID; must match the server's domain_id.

◆ enable_tcp

bool vlink::ProxyAPI::Config::enable_tcp {false}

Use TCP transport for data channels; must match the server.

◆ match_version

bool vlink::ProxyAPI::Config::match_version {true}

Reject when the server's VLINK_VERSION differs from this client.

◆ mtu_size

int vlink::ProxyAPI::Config::mtu_size {0}

DDS MTU size in bytes; 0 = default.

◆ native

bool vlink::ProxyAPI::Config::native {false}

When true, restrict all DDS traffic to 127.0.0.1.

◆ peer_ip

std::string vlink::ProxyAPI::Config::peer_ip

Unicast peer IP for DDS discovery (empty = multicast).

◆ reliable

bool vlink::ProxyAPI::Config::reliable {false}

Use reliable DDS QoS; must match the server.

◆ role

Role vlink::ProxyAPI::Config::role {kController}

Role of this client instance.

◆ security_key

std::string vlink::ProxyAPI::Config::security_key

Optional security key; empty selects the default slot.


The documentation for this struct was generated from the following file: