VLink 2.0.0
A high-performance communication middleware
Loading...
Searching...
No Matches
vlink::ProxyAPI::Config Struct Referencefinal

Construction-time configuration for ProxyAPI. More...

#include <proxy_api.h>

Collaboration diagram for vlink::ProxyAPI::Config:

Public Attributes

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

Detailed Description

Construction-time configuration for ProxyAPI.

All fields must be set consistently with the ProxyServer::Config they connect to; a mismatch on reliable, enable_tcp, or direct will trigger the corresponding Error code once the client receives the first heartbeat.

Member Data Documentation

◆ allow_ip

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

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

◆ buf_size

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

Socket send/receive buffer size in bytes; 0 uses the built-in default.

◆ dds_impl

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

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

◆ direct

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

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

◆ 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's enable_tcp.

◆ match_version

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

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

◆ mtu_size

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

DDS MTU size in bytes; 0 uses the built-in default.

◆ native

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

When true, restricts all DDS traffic to 127.0.0.1 (loopback only).

◆ 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's reliable setting.

◆ role

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

Role of this client instance.

◆ security_key

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

Optional security key for encrypted DDS channels; must match the server key.


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