VLink 2.0.0
A high-performance communication middleware
Loading...
Searching...
No Matches
vlink::AbstractNode Class Reference

Minimal interface for accessing the underlying native transport handle. More...

#include <node_impl.h>

Inheritance diagram for vlink::AbstractNode:
Collaboration diagram for vlink::AbstractNode:

Public Member Functions

virtual std::any get_native_handle () const
 Returns the underlying native transport handle wrapped in std::any.

Protected Member Functions

 AbstractNode ()
virtual ~AbstractNode ()

Detailed Description

Minimal interface for accessing the underlying native transport handle.

Concrete transport backends (e.g. DdsPublisherImpl) inherit from both AbstractNode and their corresponding NodeImpl subclass. get_native_handle() returns an std::any wrapping the backend-specific handle, allowing advanced users to access transport internals without breaking the VLink API boundary.

Note
The base implementation returns an empty std::any.

Constructor & Destructor Documentation

◆ AbstractNode()

vlink::AbstractNode::AbstractNode ( )
protected
Here is the caller graph for this function:

◆ ~AbstractNode()

virtual vlink::AbstractNode::~AbstractNode ( )
protectedvirtual
Here is the call graph for this function:

Member Function Documentation

◆ get_native_handle()

virtual std::any vlink::AbstractNode::get_native_handle ( ) const
virtual

Returns the underlying native transport handle wrapped in std::any.

Transport-specific subclasses override this to return, for example, a DDS DataWriter or DataReader pointer. Callers must std::any_cast to the correct type. The base implementation returns an empty std::any.

Returns
Backend-specific handle, or empty std::any in the base class.

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