11#ifndef routingservice_service_h
12#define routingservice_service_h
15#include "routingservice/routingservice_dll.h"
16#include "ndds/ndds_transport_c.h"
20#include "ndds/ndds_config_c.h"
22#include "routingservice/ServiceAdmin.h"
23#include "routingservice/ServiceAdminPlugin.h"
24#include "routingservice/ServiceAdminSupport.h"
41typedef void (*RTI_RoutingServiceRemoteShutdownHook_OnShutdownFunction)(
42 void *shutdownHookData);
49struct RTI_RoutingServiceRemoteShutdownHook {
51 void *shutdown_hook_data;
53 RTI_RoutingServiceRemoteShutdownHook_OnShutdownFunction on_shutdown;
56#define RTI_RoutingServiceRemoteShutdownHook_INITIALIZER {NULL, NULL}
128#ifdef DOXYGEN_DOCUMENTATION_ONLY
431 DDS_Boolean legacy_mode_test;
439#define RTI_RoutingServiceProperty_INITIALIZER {\
446 RTI_LOG_BIT_FATAL_ERROR | RTI_LOG_BIT_EXCEPTION, \
447 RTI_LOG_BIT_FATAL_ERROR | RTI_LOG_BIT_EXCEPTION, \
473extern ROUTERDllVariable
476extern ROUTERDllExport
477DDS_Boolean RTI_RoutingServiceProperty_initialize(
480extern ROUTERDllExport
485extern ROUTERDllExport
486void RTI_RoutingServiceProperty_finalize(
492extern ROUTERDllVariable
498extern ROUTERDllVariable
504extern ROUTERDllVariable
510extern ROUTERDllVariable
516extern ROUTERDllVariable
522extern ROUTERDllVariable
540extern ROUTERDllExport
559extern ROUTERDllExport
573extern ROUTERDllExport
591extern ROUTERDllExport
651extern ROUTERDllExport
655 const char * plugin_name);
664extern ROUTERDllExport
668 const char *plugin_name);
677extern ROUTERDllExport
680 void * processor_plugin,
681 const char * plugin_name);
692extern ROUTERDllExport
695 const struct RTI_RoutingServiceRemoteShutdownHook * shutdown_hook);
714extern ROUTERDllExport
717 struct RTI_Service_Admin_CommandReply ** reply,
718 const struct RTI_Service_Admin_CommandRequest * request);
731extern ROUTERDllExport
734 struct RTI_Service_Admin_CommandReply * reply);
744extern ROUTERDllExport
754extern ROUTERDllExport
764extern ROUTERDllExport
771extern ROUTERDllExport
793extern ROUTERDllExport
795 NDDS_Config_LogLevel log_level,
void RTI_RoutingServiceLogger_log(NDDS_Config_LogLevel log_level, const char *format,...)
Logs as message with the specified level.
DDS_Boolean RTI_RoutingService_set_remote_shutdown_hook(struct RTI_RoutingService *self, const struct RTI_RoutingServiceRemoteShutdownHook *shutdown_hook)
Set the remote shutdown hook in this Routing Service instance.
struct RTI_RoutingService * RTI_RoutingService_new(const struct RTI_RoutingServiceProperty *property)
Create a new RTI Routing Service instance.
const int RTI_ROUTING_SERVICE_LOG_VERBOSITY_INFO
Verbosity level: exceptions + warnings + info.
const int RTI_ROUTING_SERVICE_LOG_VERBOSITY_WARNINGS
Verbosity level: exceptions + warnings.
const char * RTI_RoutingService_get_build_number_string(void)
Return the build ID of this library.
DDS_Boolean RTI_RoutingService_attach_transformation_plugin(struct RTI_RoutingService *self, struct RTI_RoutingServiceTransformationPlugin *transformation_plugin, const char *plugin_name)
Attach a transformation plugin to be used by Routing Service when it is started.
DDS_Boolean RTI_RoutingService_start(struct RTI_RoutingService *self)
Start RTI Routing Service.
const int RTI_ROUTING_SERVICE_LOG_VERBOSITY_SILENT
Verbosity level: silent.
void RTI_RoutingService_execute_command(struct RTI_RoutingService *self, struct RTI_Service_Admin_CommandReply **reply, const struct RTI_Service_Admin_CommandRequest *request)
Executes an Administration command on this service.
const int RTI_ROUTING_SERVICE_LOG_VERBOSITY_EXCEPTIONS
Verbosity level: exceptions.
const int RTI_ROUTING_SERVICE_LOG_VERBOSITY_ALL
Verbosity level: exceptions + warnings + info + periodic.
void RTI_RoutingService_delete(struct RTI_RoutingService *self)
Stop and delete an RTI Routing Service instance.
const int RTI_ROUTING_SERVICE_LOG_VERBOSITY_DEBUG
Verbosity level: exceptions + warnings + info + periodic + content.
void RTI_RoutingService_return_reply(struct RTI_RoutingService *self, struct RTI_Service_Admin_CommandReply *reply)
Returns the reply object that is obtained as result of executing a command.
DDS_Boolean RTI_RoutingService_attach_adapter_plugin(struct RTI_RoutingService *self, void *adapter, const char *plugin_name)
Attach an adapter to be used by routing service when it is started.
DDS_Boolean RTI_RoutingService_stop(struct RTI_RoutingService *self)
Stop RTI Routing Service.
DDS_Boolean RTI_RoutingService_attach_processor_plugin(struct RTI_RoutingService *self, void *processor_plugin, const char *plugin_name)
Attach a processor to be used by Routing Service when it is started.
DDS_Boolean RTI_RoutingService_initialize_globals(void)
DDS_Boolean RTI_RoutingService_is_started(struct RTI_RoutingService *self)
Query whether this Routing Service is currently started.
DDS_Boolean RTI_RoutingService_finalize_globals(void)
RTI Routing Service C Adapter API.
RTI Routing Service Processor API.
Set of configuration properties.
Definition: routingservice_infrastructure.h:74
Configuration of RTI Routing Service.
Definition: routingservice_service.h:170
char * service_name
The name of the Routing Service instance to run.
Definition: routingservice_service.h:241
DDS_Boolean skip_default_files
Set it to true to avoid loading the standard files usually loaded by RTI Routing Service.
Definition: routingservice_service.h:374
int monitoring_domain_id
If enable_monitoring is true, this is the domain ID to use for remote monitoring.
Definition: routingservice_service.h:364
DDS_Boolean enable_monitoring
Set it to true to enable remote monitoring or false to disable it.
Definition: routingservice_service.h:352
DDS_Boolean enable_administration
Set this to true to enable remote administration or false to disable it.
Definition: routingservice_service.h:332
DDS_Boolean enforce_xsd_validation
Controls whether the service applies XSD validation to the loaded configuration.
Definition: routingservice_service.h:263
char * license_file_name
Path to an RTI Routing Service license file.
Definition: routingservice_service.h:414
int service_verbosity
The verbosity of the service.
Definition: routingservice_service.h:278
int registered_transports_count
Number of transports configured in registered_transports.
Definition: routingservice_service.h:402
int cfg_strings_count
Size of the array cfg_strings.
Definition: routingservice_service.h:229
struct RTI_RoutingServiceProperties user_environment
Dictionary of user variables. The dictionary provides a parallel way to expand XML configuration vari...
Definition: routingservice_service.h:424
int administration_domain_id
If enable_administration is true, this is the domain ID to use for remote administration.
Definition: routingservice_service.h:344
struct RTI_RoutingServiceTransportConfig registered_transports[8]
Transports to be loaded by RTI Connext.
Definition: routingservice_service.h:393
DDS_Boolean identify_execution
Set this to true to append the host name and process ID to the RTI Routing Service execution name.
Definition: routingservice_service.h:384
DDS_Boolean dont_start_service
Set this to true to if you do not want RTI Routing Service enabled when RTI_RoutingService_start is c...
Definition: routingservice_service.h:324
int dds_verbosity
The verbosity of RTI Connext core libraries.
Definition: routingservice_service.h:292
char * plugin_search_path
This path is used to look for plug-in libraries.
Definition: routingservice_service.h:313
const char ** cfg_strings
XML configuration represented as strings.
Definition: routingservice_service.h:222
char * application_name
Assigns a name to the execution of the RTI Routing Service.
Definition: routingservice_service.h:254
int domain_id_base
Value that is added to the domain IDs of the domain routes in the XML configuration.
Definition: routingservice_service.h:302
char * cfg_file
Path to an RTI Routing Service configuration file.
Definition: routingservice_service.h:180
Association between a transport alias and its create function pointer.
Definition: routingservice_service.h:152
NDDS_Transport_create_plugin create_function
Pointer to the function to load the transport.
Definition: routingservice_service.h:160
char * alias
An alias defined in the XML configuration to refer to a transport.
Definition: routingservice_service.h:156
RTI Routing Service.
Definition: routingservice_service.h:134