This structure contains the plugin implementation as a set of function pointers.
C adapters are registered with RTI Routing Service using the XML tag <adapter_plugin>
For example:
<dds>
...
<adapter_library name="MyAdapterLib">
<adapter_plugin name="MyAdapterPlugin">
<dll>mycadapter</dll>
<create_function>
MyAdapterPlugin_create
</create_function>
</adapter_plugin>
...
</adapter_library>
...
<routing_service>
...
</routing_service>
...
</dds>
In the previous example, MyAdapterPlugin_create is the function that creates and instance of the adapter plugin.
This function must have the following prototype
The version of this adapter plugin.
Handles the deletion of the adapter plugin (required).
| RTI_RoutingServiceAdapterPlugin_CreateConnectionFcn RTI_RoutingServiceAdapterPlugin::adapter_plugin_create_connection |
Handles the creation of connections (required).
| RTI_RoutingServiceAdapterPlugin_DeleteConnectionFcn RTI_RoutingServiceAdapterPlugin::adapter_plugin_delete_connection |
Handles the deletion of connections (required).
| RTI_RoutingServiceConnection_CreateSessionFcn RTI_RoutingServiceAdapterPlugin::connection_create_session |
Handles the creation of sessions (optional).
| RTI_RoutingServiceConnection_DeleteSessionFcn RTI_RoutingServiceAdapterPlugin::connection_delete_session |
Handles the deletion of sessions (optional).
| RTI_RoutingServiceConnection_CreateStreamReaderFcn RTI_RoutingServiceAdapterPlugin::connection_create_stream_reader |
Handles the creation of stream readers (optional for write-only adapters).
| RTI_RoutingServiceConnection_DeleteStreamReaderFcn RTI_RoutingServiceAdapterPlugin::connection_delete_stream_reader |
Handles the deletion of stream readers (optional for write-only adapters).
| RTI_RoutingServiceConnection_CreateStreamWriterFcn RTI_RoutingServiceAdapterPlugin::connection_create_stream_writer |
Handles the creation of stream writers (optional for read-only adapters).
| RTI_RoutingServiceConnection_DeleteStreamWriterFcn RTI_RoutingServiceAdapterPlugin::connection_delete_stream_writer |
Handles the deletion of stream writers (optional for read-only adapters).
| RTI_RoutingServiceConnection_GetDiscoveryReaderFcn RTI_RoutingServiceAdapterPlugin::connection_get_input_stream_discovery_reader |
Gets the input stream discovery reader (optional).
| RTI_RoutingServiceConnection_GetDiscoveryReaderFcn RTI_RoutingServiceAdapterPlugin::connection_get_output_stream_discovery_reader |
Gets the output stream discovery reader (optional).
| RTI_RoutingServiceConnection_CopyTypeRepresentationFcn RTI_RoutingServiceAdapterPlugin::connection_copy_type_representation |
Handles the copy of type representations (optional).
| RTI_RoutingServiceConnection_DeleteTypeRepresentationFcn RTI_RoutingServiceAdapterPlugin::connection_delete_type_representation |
Handles the deletion of type representations (optional).
Returns the string representation of a connection for logging purposes (optional).
[Not supported] Handles configuration changes in a connection (optional).
| RTI_RoutingServiceConnection_GetAttributesFcn RTI_RoutingServiceAdapterPlugin::connection_get_attributes |
[Not supported] Gets the connection attributes
[Not supported] Handles configuration changes in a session (optional).
Reads from an input stream (optional for write-only adapters).
| RTI_RoutingServiceStreamReader_ReturnLoanFcn RTI_RoutingServiceAdapterPlugin::stream_reader_return_loan |
Returns the loan on the read samples and infos (optional for write-only adapters).
[Not supported] Handles configuration changes in a stream reader (optional).
Writes to an output stream (optional for read-only adapters).
[Not supported] Handles configuration changes in a stream writer (optional).
A place for adapter implementors to keep a pointer to data that may be needed by the implementation.