|
VLink 2.0.0
A high-performance communication middleware
|
Base CRTP template for all VLink communication nodes. 更多...
#include <atomic>#include <memory>#include <mutex>#include <optional>#include <string>#include "./extension/security.h"#include "./impl/node_impl.h"#include "./internal/node-inl.h"类 | |
| class | vlink::Node< ImplT, SecT > |
| Transport-agnostic CRTP base for all VLink communication nodes. 更多... | |
命名空间 | |
| namespace | vlink |
Base CRTP template for all VLink communication nodes.
Node<ImplT, SecT> is the common base class inherited by Publisher, Subscriber, Server, Client, Setter, and Getter. It owns the transport-specific implementation pointer (impl_), drives the node lifecycle, and provides the shared services described below.
| Step | Method | Notes |
|---|---|---|
| Construction | constructor | Parses URL, creates impl via Conf factory. |
| Initialisation | init() | Calls impl init + init_ext, sets loan flag. |
| Use | publish/listen/invoke | Normal operation. |
| Interrupt | interrupt() | Unblocks any blocking wait immediately. |
| De-initialisation | deinit() | Calls interrupt(), then impl deinit. |
| Destruction | destructor | Calls deinit() automatically. |
SecurityType::kWithSecurity: intra:// and dds:// with CDR serialisation do NOT support security.shm:// (Iceoryx) and shm2:// (Iceoryx2) transports, a loaned buffer avoids extra copies: | ImplT | Concrete transport implementation (must inherit NodeImpl). |
| SecT | Security mode: kWithoutSecurity (default) or kWithSecurity. |