![]() |
dfx 0.1.0
Linux-based dynamic dataflow executor
|
Transient registration context used during plugin discovery. More...
#include <dfx-plugins-interface/PluginInterface.h>
Public Attributes | |
| dfx_registration_handle_t | handle |
| Internal host context. Must be passed as the first argument to registration functions. | |
| int(* | register_transport )(dfx_registration_handle_t handle, char const *scheme, dfx_transport_interface_t const *transport_interface, size_t transport_interface_size) |
| Registers a transport scheme with the host. | |
| int(* | register_node )(dfx_registration_handle_t handle, char const *type, char const *node_metadata, char const *config_schema, dfx_node_interface_t const *node_interface, size_t node_interface_size) |
| Registers a node type with the host. | |
Transient registration context used during plugin discovery.
This structure is provided to the plugin during the dfx_init_plugin call. It serves as the primary mechanism for a plugin to announce its capabilities (Transports, Nodes) to the host.
| dfx_registration_handle_t dfx_registration_api_t::handle |
Internal host context. Must be passed as the first argument to registration functions.
| int(* dfx_registration_api_t::register_node) (dfx_registration_handle_t handle, char const *type, char const *node_metadata, char const *config_schema, dfx_node_interface_t const *node_interface, size_t node_interface_size) |
Registers a node type with the host.
| [in] | handle | The registration handle provided in this struct. |
| [in] | type | The node type to register. |
| [in] | node_metadata | The JSON metadata of the node type. |
| [in] | config_schema | A JSON schema for the node configuration. Can be null. |
| [in] | node_interface | Pointer to the node's interface vtable. |
| [in] | node_interface_size | Size of the dfx_node_interface_t structure. |
errno is set to:handle is NULL.node_interface definition is too old. | int(* dfx_registration_api_t::register_transport) (dfx_registration_handle_t handle, char const *scheme, dfx_transport_interface_t const *transport_interface, size_t transport_interface_size) |
Registers a transport scheme with the host.
The plugin calls this to associate a URI scheme (e.g., "udp", "shm") with its implementation vtable.
| [in] | handle | The registration handle provided in this struct. |
| [in] | scheme | The URI scheme string. |
| [in] | transport_interface | Pointer to the transport's interface vtable. |
| [in] | transport_interface_size | Size of the dfx_transport_interface_t structure. |
errno is set to:handle is NULL.transport_interface definition is too old.