VLink 2.0.0
A high-performance communication middleware
载入中...
搜索中...
未找到
vlink::ConfPluginInterface结构体 参考abstract

Pure-virtual plugin interface for external transport Conf factories. 更多...

#include <conf_plugin_interface.h>

vlink::ConfPluginInterface 的协作图:

Public 成员函数

virtual TransportType get_transport_type () const =0
 Returns the transport backend handled by this plugin.
virtual std::unique_ptr< Confcreate () const =0
 Creates and returns a new transport Conf instance.

Protected 成员函数

 ConfPluginInterface ()=default
virtual ~ConfPluginInterface ()=default

详细描述

Pure-virtual plugin interface for external transport Conf factories.

Each VLink transport plugin exports exactly one concrete subclass of this interface. The VLink runtime loads the plugin shared library, locates the registered instance via VLINK_PLUGIN_REGISTER, and queries it for the supported transport backend and new Conf objects.

构造及析构函数说明

◆ ConfPluginInterface()

vlink::ConfPluginInterface::ConfPluginInterface ( )
protecteddefault
这是这个函数的调用关系图:

◆ ~ConfPluginInterface()

virtual vlink::ConfPluginInterface::~ConfPluginInterface ( )
protectedvirtualdefault

成员函数说明

◆ create()

virtual std::unique_ptr< Conf > vlink::ConfPluginInterface::create ( ) const
nodiscardpure virtual

Creates and returns a new transport Conf instance.

Called once per Url construction that matches this plugin's transport. The returned object must be fully initialised and ready for parse() calls. Ownership is transferred to the caller via unique_ptr.

返回
A heap-allocated Conf subclass specific to this transport.
函数调用图:

◆ get_transport_type()

virtual TransportType vlink::ConfPluginInterface::get_transport_type ( ) const
nodiscardpure virtual

Returns the transport backend handled by this plugin.

Called by Url::load_for_plugin() to determine whether this plugin supports the transport of the URL being constructed.

返回
The TransportType enumeration value identifying the transport backend.

该结构体的文档由以下文件生成: