|
VLink 2.0.0
A high-performance communication middleware
|
Core type definitions shared across all VLink node implementations. 更多...
#include <chrono>#include <cstdint>#include <iostream>#include <string>#include <string_view>#include "../base/bytes.h"#include "../base/macros.h"类 | |
| struct | vlink::Timeout |
| Compile-time timeout constants used by blocking wait methods. 更多... | |
| struct | vlink::SampleLostInfo |
| Cumulative sample delivery statistics for a subscriber or getter. 更多... | |
| struct | vlink::SchemaData |
| Carries one serialized schema blob for runtime registration or embedding. 更多... | |
| struct | vlink::Version |
| Semantic version number with comparison and string conversion utilities. 更多... | |
命名空间 | |
| namespace | vlink |
枚举 | |
| enum | vlink::ImplType : uint8_t { vlink::kUnknownImplType = 0 , vlink::kServer = 16 , vlink::kClient = 32 , vlink::kPublisher = 1 , vlink::kSubscriber = 2 , vlink::kSetter = 4 , vlink::kGetter = 8 } |
| Bitmask identifying the role of a VLink node implementation. 更多... | |
| enum class | vlink::TransportType : uint8_t { vlink::kUnknown = 0 , vlink::kIntra = 1 , vlink::kShm = 2 , vlink::kShm2 = 3 , vlink::kZenoh = 4 , vlink::kDds = 5 , vlink::kDdsc = 6 , vlink::kDdsr = 7 , vlink::kDdst = 8 , vlink::kSomeip = 9 , vlink::kMqtt = 10 , vlink::kFdbus = 11 , vlink::kQnx = 12 } |
| Enumeration of all supported transport backends. 更多... | |
| enum class | vlink::InitType : uint8_t { vlink::kWithoutInit = 0 , vlink::kWithInit = 1 } |
| Controls whether a node is initialised immediately at construction. 更多... | |
| enum class | vlink::SecurityType : uint8_t { vlink::kWithoutSecurity = 0 , vlink::kWithSecurity = 1 } |
| Controls whether a node uses encrypted/authenticated transport. 更多... | |
| enum class | vlink::ActionType : uint8_t { vlink::kUnknownAction = 0 , vlink::kClientRequest = 1 , vlink::kClientResponse = 2 , vlink::kServerRequest = 3 , vlink::kServerResponse = 4 , vlink::kPublish = 5 , vlink::kSubscribe = 6 , vlink::kSet = 7 , vlink::kGet = 8 } |
| Identifies the type of message action for recording purposes. 更多... | |
| enum class | vlink::SchemaType : uint8_t { vlink::kUnknown = 0 , vlink::kRaw = 1 , vlink::kZeroCopy = 2 , vlink::kProtobuf = 3 , vlink::kFlatbuffers = 4 } |
| Coarse runtime schema family used by discovery, bag metadata, and proxy routing. 更多... | |
Core type definitions shared across all VLink node implementations.
Defines the fundamental enumerations and plain-data structs that are used throughout the VLink implementation layer. These types are part of the internal ABI between the Node<> template, the transport Conf implementations, and the NodeImpl backend classes.
ImplType)ImplType values can be bitwise-OR'd together when querying combined roles:| Value | Hex | Description |
|---|---|---|
| kUnknownImplType | 0x00 | Type not yet determined. |
| kPublisher | 0x01 | Event publisher node. |
| kSubscriber | 0x02 | Event subscriber node. |
| kSetter | 0x04 | Field setter node. |
| kGetter | 0x08 | Field getter node. |
| kServer | 0x10 | Method server node. |
| kClient | 0x20 | Method client node. |
TransportType)| Value | URL Prefix | Transport |
|---|---|---|
| kUnknown | (none) | Unknown or unsupported. |
| kIntra | intra:// | In-process queue (no serialisation). |
| kShm | shm:// | Iceoryx shared memory. |
| kShm2 | shm2:// | Iceoryx2 shared memory. |
| kZenoh | zenoh:// | Zenoh publish/subscribe. |
| kDds | dds:// | Fast-DDS RTPS. |
| kDdsc | ddsc:// | CycloneDDS. |
| kDdsr | ddsr:// | RTI DDS. |
| kDdst | ddst:// | TravoDDS. |
| kSomeip | someip:// | SOME/IP via vsomeip. |
| kMqtt | mqtt:// | MQTT publish/subscribe. |
| kFdbus | fdbus:// | FDBus IPC. |
| kQnx | qnx:// | QNX IPC (QNX only). |